У меня есть страница Views на многоязычном веб-сайте, где мне нужны разные URL для каждого языка, а именно:
- es: mysite / apartamentos.
- ru: mysite / appartments.
- fr: mysite / appartements.
- ru: mysite / arendu.
Я создал псевдоним URL для каждого языка (который является mysite / appartments, хотя языком по умолчанию для моего сайта является испанский), поэтому испанский псевдоним для appartments
is apartamentos
и так далее. Я создал эти псевдонимы, используя configuration >> Search and Metadata >> URL aliases >> add alias
.
Я должен передать параметры запроса представлению, чтобы отфильтровать результаты, чтобы мой URL был похож на mysite / en / appartments / p / location_field / 2, и у меня есть форма, в которую я вручную помещаю действие, например:
echo "/".$language."/".$translated_page
где переведенная страница может быть квартирами, квартирами, квартирами или арендой, составляя URL-адрес действия:
/ es / apartamentos, / fr / appartements, / en / appartments и / ru / arendu
Моя проблема в том, что при отправке этой формы Drupal отправляет меня
MySite / ES / апартаменты / р / location_field / 2
вместо
MySite / ES / Апартаменты / р / location_field / 2
и то же самое происходит для всех языков. В остальном все выглядит хорошо, и даже крошка (которая генерируется с помощью URL) выглядит правильно (Inicio >> Apartamentos Costa Dorada, по-испански).
Когда я использую переключатель языка, он перенаправляет меня на правильную переведенную страницу, но без параметров запроса (с mysite/es/appartments/p/location_field/2
него отправляет меня mysite/es/apartamentos
).
Я не знаю, что может быть причиной этой проблемы, может быть, параметры запроса, мешающие интерпретации псевдонима?
Примечание . У меня включено много модулей перевода. Для модулей i18n имеются: блок, поле, меню, узел, путь, строка, таксономия, перевод (наборы переводов), переменная и представления.
источник
Ответы:
подмодуль i18n_path
Я предполагаю, что вы также используете модуль i18n . Поэтому убедитесь, что вы также включили
i18n_path
подмодуль (= Путь перевода). Подробнее об этом, из документации сообщества (здесь добавлена жирная разметка):i18n просмотров страниц
Вы также можете проверить, можете ли вы заставить его работать с помощью модуля просмотра страниц i18n . Некоторые детали со страницы проекта:
Примечание 1 : « если вы не можете найти какую-либо опцию в представлении для перевода пути » (как в вашем комментарии ниже), то вы можете взглянуть на то, что упомянуто в комментарии № 1 выпуска 2389535 , в котором говорится:
Отпечаток экрана 1 :
Снимок экрана 2 :
Примечание 2 : Чтобы ответить на вопрос « Нужно ли мне снова создавать страницу целиком, чтобы она стала i18n_page? » (Как в одном из ваших (теперь удаленных) комментариев ниже этого ответа), я бы попробовал использовать какой-либо из подходов, описанных в ответах на вопрос в разделе Как дублировать отображение представлений (которое не является главным) как другой тип отображения? ... Если это не работает / не применяется, то восстановление всей страницы просмотра кажется единственным оставленным вариантом.
источник
Удалите путь-псевдоним и попробуйте кодировать этот специальный случай самостоятельно, используя
hook_url_inbound_alter и или hook_url_outbound_alter
Вы также можете изменить действие формы открытого фильтра:
Или:
Взятая форма здесь Как мне изменить отправленный URL для открытого поискового фильтра?
источник