Условия для плагина polylang для определения текущего языка
В одном из проектов нужно было встроить к шаблон функционал, который должен меняться в зависимости от языка.
Для указания языка документа можно использовать такой вариант при включенном плагине Polylang:
<html lang="<?php echo pll_current_language('slug'); ?>">
Но лучше использовать универсальный вариант без привязки к Polylang:
<html <?php language_attributes(); ?>>
Слайдеры и тексты редактировались через произвольные поля, поэтому с ними проблем не было.
Но были некоторые части кода, которые должны были меняться для разных языковых версий.
Благодаря хорошей документации на сайте разработчика, было создано такое решение:
<?php
$my_lang = pll_current_language(); // определяем текущий язык
if ( $my_lang == 'ru' ) {
echo crea_show_option('address_ru'); // если язык русский, тогда выводим поле с адресом на русском
}
elseif ( $my_lang == 'pl' ) {
echo crea_show_option('address_pl'); // если язык польский, тогда выводим поле с адресом на польском
}
else {
echo "Oleksandra Polya Avenue, 117"; // если ни один из вариантов не подходит, то выводим по умолчанию английский
}
?>
Чтобы было понятно, этот скрипт пишется для этого виджета: Скрипт будет написан для такой структуры…
Для того, чтобы можно было открывать картинки из слайдера Royal Slider в popup нужно: 1….
Иногда нужно получить больше информации из отправленной формы, не только те данные, которые заполнил пользователь,…
Несколько дней назад состоялся релиз WordPress 4.4 «Clifford», названный в честь американского музыканта Клиффорда Брауна….
5 комментариев
Ответить
Если языка всего два, то можно использовать просто if ($my_lang == ‘ru’) { …; } else { …; }
Все верно, пример кода в статье упрощен и взят с сайта с несколькими языками.
Лучше всего заканчивать кодом с английским вариантом, который должен быть на сайте по умолчанию
А как реализовать условие в js ?
Вывести нужные данные на фронт, и через JS получить их или обработать.
Спасибо! Выручил)