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.