Traducir urls

niidea

Nuevo usuario
Hola a todos, he instalado varias tiendas con magento y nunca se me habia ocurrido traducir las urls.

Cuando he intentado hacerlo, he tendido a usar los rewrites, pero claro, aunque yo tenga la "url traducida" magento no la muestra en los links.

Un ejemplo: Los links del top siguen apuntando a:
www.dominio.com/customer/account/
www.dominio.com/checkout/cart/

Lo ideal seria que el html ( href) mostrara:
www.dominio.com/cliente/cuenta
www.dominio.com/cesta

He intentado hacerlo sin exito o buscar una extension pero o soy más lelo de lo que pensaba o no hay nada.

¿Alguien se ha planteado traducir las urls desde ingles a español?¿Cómo lo haceis?

Gracias por adelantado
 

KiwiWeb

Miembro
Buenas niidea,
Las urls depende de lo que pongamos a la hora de crear las categorías y las páginas. Fijate en los sitios donde te da a elegir la URL key, que si no se elije coje por defecto el nombre que le pongas solo que separado por "-".

Un saludo
 

niidea

Nuevo usuario

natty2015

Nuevo usuario
Hola niidea, solucionaste este problema de las urls de account y cart? yo tengo ese problema y no se como solucionar, ojala y me puedas ayudar.

Saludos
 

niidea

Nuevo usuario
Hola natty2015,

En mi caso, no he conseguido hacer que getUrl() devuelva el rewrite introducido, así que he necesitado desarrollar mi propia solución. Problablemente no sea la mejor forma para hacerlo, pero es la única que se me ocurrió y que funciona. Mi solución consta de 3 pasos:

1 - añadir las urls a URL Rewrite
2 - desarrollar mi propia funcion para obtener la url que necesito. Algo parecido a:

public function getURLTraducida($rewriteID){
$urlRewrite = Mage::getModel('core/url_rewrite');
$urlRewrite->setStoreId(Mage::app()->getStore()->getId());
$urlRewrite->loadByIdPath($rewriteID);
return Mage::getUrl($urlRewrite->getRequestPath());
}

3 - en cada lugar que aparece la llamada que quiero traducir, uso la funcion getURLTraducida en lugar de getUrl.

Espero que te sirva.

un saludo
 

natty2015

Nuevo usuario
Ahora quisiera saber si me puedes ayudar a traducir la parte del email?, tengo mi tema en dos idiomas y cuando llega el mensaje al correo me llega todo en ingles, donde debo modificar para que me llegue en español??
 

KiwiWeb

Miembro
Buenas, supongo que te referiras a los mails transaccionales, no se si los tendrás ya configurados (o si te vendrán en los dos idiomas), pero por como me gusta prevenir también por si otra persona a encontrado este foro y quiere saber todo el proceso, veamos:
1.-Primero debemos tener una versión del mail para cada idioma que necesitemos, estos se crean en sistema->emails transaccionales (aviso: aunque se despliga un submenu no vamos a entrar en el, pulsamos directamente en emails transaccionales, esto suele pasar si tenemos un gestor de correos como mandril).
2.-agregamos una plantilla y en la parte de arriba seleccionamos la que queramos tener en otro idioma -new account, password change, etc...- Y en la parte de abajo le damos un nuevo nombre -de new account podría ser nueva cuenta_ES- y buscamos entre el código las partes de texto y las traducimos (es un poco dificil y te quemas las pestañas a veces para encontrar una palabra pero es así).
3.-En la parte de arriba a la izq seleccionamos en "Rango de configuración actual:" la vista del idioma que vayamos a usar para los mails, así si es es español, pondremos la vista de la tienda en español.
4.-Buscamos en sistema->configuración, donde se asignan los mails, por ejemplo, todos los mails relacionados con las ventas están en el menú "emails ventas" y los submenus son los diferentes mails que se mandan, entramos en uno y seleccionamos donde hace referencia a las plantillas nuestra propia plantilla "nombre_ES".

Bueno, espero que quede claro, suelo poner pantallazos aclarativos pero acabo de instalarme ubuntu y no se como hacerlo sin mi querido paint, de todos modos si no se entiende dadme unas horas y lo actulizo

Un saludo y suerte
 
Arriba