[vc_message color=”alert-info”]
Статья в процессе написания.
Начинал писать ее в 2013 году, потом все менялось и постоянно удалялись черновики.
Сейчас хочу привести статью по локализации шаблонов к какому-то полноценному завершенному виду.
А пока что буду добавлять сюда информацию отрывочно, чтобы потом из обрывков мыслей сложить полноценную инструкцию.
[/vc_message]
Для начала в файле functions.php указываем папку с локализованными переводами и даем понять, что шаблон мультиязычен:
add_action( 'after_setup_theme', 'my_theme_setup' ); function my_theme_setup(){ load_theme_textdomain( 'crea', get_template_directory() . '/languages' ); }
В шаблоне в папке /languages
должны находиться файлы с переводами в формате .po и .mo
В самом шаблоне статические тексты оборачиваем в функцию _e() или __()
<?php _e('Contact us', 'crea'); ?>
Так же можно (но не нужно), вместо функций _e() или __() использовать функции pll__(), pll_e() вместе с pll_register_string() и переводить фразы в админке WordPress на странице настроек Polylang. Документация.
В хеде используем определение языка для html
<html lang="<?php echo pll_current_language('slug'); ?>">
Для перевода шаблона из админки подойдет плагин Loco Translate
Полезные ссылки по локализации шаблонов на CMS WordPress: