Tengo una página de Vistas en un sitio web multilingüe donde necesito una URL diferente para cada idioma, es decir:
- es: mysite / apartamentos.
- en: mysite / appartments.
- fr: mysite / appartements.
- ru: mysite / arendu.
Creé un alias de URL para cada idioma (que es mysite / appartments aunque el idioma predeterminado de mi sitio es el español), por lo que el alias en español appartments
es apartamentos
y así sucesivamente. Creé estos alias usando configuration >> Search and Metadata >> URL aliases >> add alias
.
Tengo que pasar parámetros de consulta a la vista para filtrar los resultados, por lo que mi URL es algo así como mysite / en / appartments / p / location_field / 2 y tengo un formulario donde pongo manualmente la acción como:
echo "/".$language."/".$translated_page
donde la página traducida puede ser apartamentos, apartamentos, apartamentos o arendu, haciendo la url de acción:
/ es / apartamentos, / fr / appartements, / es / appartments y / ru / arendu
Mi problema es que cuando se envía este formulario, Drupal me envía a
mysite / es / appartments / p / location_field / 2
en vez de
mysite / es / apartamentos / p / location_field / 2
y lo mismo ocurre para todos los idiomas. El resto de la cosa parece estar bien e incluso la miga de pan (que se genera usando la URL) parece correcta (Inicio >> Apartamentos Costa Dorada, en español).
Cuando uso el cambio de idioma, me redirige a la página traducida correcta pero sin los parámetros de consulta (de mysite/es/appartments/p/location_field/2
donde me envía mysite/es/apartamentos
).
No sé qué puede estar causando este problema, ¿tal vez los parámetros de consulta interfieren con la interpretación del alias?
Nota : Tengo muchos módulos de traducción habilitados. Para los módulos i18n hay: bloque, campo, menú, nodo, ruta, cadena, taxonomía, traducción (conjuntos de traducción), variable y vistas.
fuente
Respuestas:
submódulo i18n_path
Supongo que también estás usando el módulo i18n . Así que asegúrese de habilitar también el
i18n_path
submódulo (= Traducción de ruta). Más detalles al respecto, de la documentación de la comunidad (marcado en negrita agregado aquí):Vistas de página i18n
También es posible que desee verificar si puede hacerlo funcionar utilizando el módulo de vistas de página i18n . Algunos detalles de su página de proyecto:
Nota 1 : " si no puede encontrar ninguna opción en la vista para traducir la ruta " (como en su comentario a continuación), es posible que desee ver lo que se menciona en el Comentario n. ° 1 del problema 2389535 , que establece:
Serigrafía 1 :
Serigrafía 2 :
Nota 2 : Para responder a la pregunta sobre " ¿Tendré que volver a crear la página de vista completa para convertirla en una página i18n_? " (Como en uno de sus comentarios (ahora eliminados) debajo de esta respuesta), lo probaría usando ¿Alguno de los enfoques descritos en las respuestas a la pregunta en Cómo duplicar una visualización de Vistas (que no es la maestra) como un tipo de visualización diferente? ... Si eso no funciona / aplica, la recreación de la página de vista completa parece ser la única opción que queda.
fuente
Elimine el alias de ruta e intente codificar este caso especial usted mismo, utilizando
hook_url_inbound_alter y o hook_url_outbound_alter
También podría alterar la acción de la forma del filtro expuesto:
O:
Formulario tomado aquí ¿Cómo cambio la URL de envío del filtro de búsqueda expuesto?
fuente