Ho una pagina Visualizzazioni in un sito Web multilingue in cui ho bisogno di un URL diverso per ogni lingua, ovvero:
- es: mysite / apartamentos.
- en: mysite / appartments.
- fr: mysite / appartements.
- ru: mysite / arendu.
Ho creato un alias url per ogni lingua (che è mysite / appartamenti sebbene la lingua predefinita del mio sito sia lo spagnolo), quindi l'alias spagnolo appartments
è apartamentos
e così via. Ho creato questi alias usando configuration >> Search and Metadata >> URL aliases >> add alias
.
Devo passare i parametri della query alla vista per filtrare i risultati in modo che il mio URL sia qualcosa di simile a mysite / en / appartments / p / location_field / 2 e ho un modulo in cui inserisco manualmente l'azione come:
echo "/".$language."/".$translated_page
dove la pagina tradotta può essere appartamenti, appartamenti, appartamenti o arendu, rendendo l'azione url:
/ es / apartamentos, / fr / appartements, / en / appartments e / ru / arendu
Il mio problema è che quando viene inviato questo modulo Drupal mi invia
miosito / es / appartamenti / p / location_field / 2
invece di
miosito / es / apartamentos / p / location_field / 2
e lo stesso accade per tutte le lingue. Il resto della cosa sembra a posto e anche il pangrattato (che viene generato usando l'URL) sembra corretto (Inicio >> Apartamentos Costa Dorada, in spagnolo).
Quando utilizzo il cambio di lingua mi reindirizza alla pagina tradotta corretta ma senza i parametri di query (da mysite/es/appartments/p/location_field/2
esso mi invia a mysite/es/apartamentos
).
Non so che cosa può causare questo problema, forse i parametri della query interferiscono con l'interpretazione dell'alias?
Nota : ho molti moduli di traduzione abilitati. Per i moduli i18n ci sono: blocco, campo, menu, nodo, percorso, stringa, tassonomia, traduzione (set di traduzioni), variabile e viste.