|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] WPML, двуязычный сайт на wordpress и проблемы при сортировке. |
|
[решено] WPML, двуязычный сайт на wordpress и проблемы при сортировке.
|
Старожил Сообщения: 187 |
Изменил первоначальное сообщение, так как залил вчера двуязычную версию сайта на сервер, и могу теперь данную проблему показать более наглядно.
Приветствую, достаточно спешно ищу удовлетворительное решение следующей проблемы. Есть сайт на вордпрессе, собственно, вот он, в настоящее время языков 2 - англ и рус. Проблема. При применении любого правила сортировки (например, см пункт меню Properties) при втором (недефолтном) языке результат сортировки выдается на дефолтном языке....Т.е. у меня дефолтный англ, второй - рус, например, тот же пункт меню Properties у меня назван Объекты и находится по адресу - связан с англ Теперь я например хочу отсортировать объекты по цене по возрастанию, находясь в русской версии, результат получаю как т.е. по англ. Если я вручную добавляю ru - - результат сортировки корректный, но как добиться, чтобы это []ru[/] при сортировке не удалялось, не пойму... Единственное похожее видел в гугле .... - но там как видно сортировка посредством woocommerce, а у меня тут woocommerce нет... Однако думаю все равно как то должно это решаться, может быть, где то можно вручную (htaccess?) прописать редиректы для соотв-их урлов, благо их там немного. Т.е. если нет красивого и правильного решения, возможно ли каким то образом задать редиректы, например с .... редиректить на ..., но конечно только для переходов с любой []ru[/] страницы ( ...... ) |
|
------- Отправлено: 15:54, 14-10-2014 |
Старожил Сообщения: 187
|
Профиль | Отправить PM | Цитировать Написал в суппорт автора шаблона, как вариант, в непереведенных местах использовать условие для вывода нужного контента или подключения оного в зависимости от текущей языковой локали.
Поскольку для многоязычности используется wpml, автор предложил использовать следующую конструкцию: Что самое смешное, в гугле довольно много комментов по данной проблеме, и в основном, все у людей работает. У меня - нет. Если использую код выше, то результат сортировки всегда - в обоих языках - выводится на англ, если изменяю на то результат сортировки в обоих языках всегда по русски. Автор темы стал меня игнорировать, сказал, типа, все должно работать, но у меня не срабатывает и я искренне недоумеваю, в чем проблема. Если мыслить логически, исходя из результатов сортировки, условие срабатывает, но переменная ICL_LANGUAGE_CODE всегда в первом случае возвращает false - и совершенно не понятно, почему... Использую ICL_LANGUAGE_CODE для вывода нужных виджетов - в зависимости от языка - все срабатывает...а тут нет... Предлагается всесто ICL_LANGUAGE_CODE использовать wpml_current_lang - результат абсолютно идентичен предыдущему... Есть идеи? |
------- Отправлено: 16:22, 19-10-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 187
|
Профиль | Отправить PM | Цитировать Проблема решена, публикую решение, может, кому то еще пригодится.
Для начала необходимо внести изменения в соответствующий php файл, в моем случае это archive-property.php - если изменения будут вноситься в другие шаблоны, необходимо найти соотв-ий php-файл и внести данное изменение в него. Например, для header.twig это header.php, для footer.twig это footer.php ну и т.д. Я буду вносить изменения в шаблон sort.twig, который подключен к шаблону archive-property.twig, поэтому первое изменение я и вношу в файл archive-property.php, Итак, в archive-property.php в секцию echo View::render необходимо добавить след-ю строку: После чего уже изменения можно вносить в шаблон. Я изменяю sotr.twig, но можно создать свой шаблон для нужного языка и подключать его. Я изменяю в sort.twig <form action="{{ wp.get_bloginfo('wpurl') }}/{{ wp.__('properties', 'aviators') }}/" method="get" class="form-sort form-horizontal"> {% if wpml_current_lang == 'en' %} <form action="{{ wp.get_bloginfo('wpurl') }}/{{ wp.__('properties', 'aviators') }}/" method="get" class="form-sort form-horizontal"> {% else %} <form action="{{ wp.get_bloginfo('wpurl') }}/{{ wp.__('ru/properties', 'aviators') }}/" method="get" class="form-sort form-horizontal"> {% endif %} |
------- Отправлено: 13:46, 20-10-2014 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Редирект при заходе на сайт | petabyte | Вебмастеру | 10 | 20-07-2014 13:30 | |
Неверный пароль при автоматическом заходе на сайт | Не Волшебник | AutoIt | 0 | 04-04-2014 13:02 | |
[решено] Как убрать в комментариях поле «сайт» в wordpress? | anfis_chekhov | Вебмастеру | 17 | 15-02-2013 15:58 | |
MySQL - Приоритет при сортировке результатов Select-запроса | evg64 | Программирование и базы данных | 1 | 28-05-2011 18:41 | |
[решено] Ошибка синтаксиса при входе на сайт | Grub | Хочу все знать | 2 | 19-12-2006 07:32 |
|