SOFT
SPRINT

softsprint.net
Shop

Несколько языков WordPress. Плагин qTranslate

4) Для изменения языка в названиях виджетов используем такую конструкцию:

1
define('QT_SUPPORTED_WP_VERSION', $wp_version);

4) Для изменения языка в названиях виджетов используем такую конструкцию:

1
 
1
2
3
4
5
/pre>
 
Внимание: в Вашем случае вместо eng пишите en, а вместо rus пишите ru!
 
5) Если нужно динамически переводить текстовые блоки в теме, то используем такую конструкцию:

6) Если нужно динамически выводить какой-либо функциональный элемент темы, например, меню, то можем пользоваться такой конструкцией (источник: http://bizikov.ru/2013/07/multilanguage-wordpress/):
Регистрируем в functions.php нужные меню:

1
2
3
4
5
<?php if(get_locale() == 'ru_RU') { ?>
Русский текст
<?php } else { ?>
English text
<?php } ?>

Далее в админке WordPress наполняем эти меню и сохраняем. Для вывода меню, вставляем в нужном месте следующий код:

1
2
3
4
5
if ( function_exists( 'register_nav_menu' ) ) {
  register_nav_menus(
    array('ru'=>__('RU Menu'),'en'=>__('EN Menu'),)
  );
}

На сегодня всё))

P.S. Со времени написания статьи появился новый плагин qTranslate X (https://wordpress.org/plugins/qtranslate-x/). Благо, в нём ничего не нужно править на уровне кода, поскольку разработчики уже учли все баги оригинального qTranslate. От себя замечу один нюанс с выводом дат на страницах WordPress: в админке рекомендую отметить пункт «Преобразование Даты/Времени» — STRFTIME вместо даты с заменой форматов предопределенных для каждого языка.

Также на заметку следует взять следующий способ вывода текста в зависимости от языка:

1
2
3
4
5
if(get_locale() == 'ru_RU') {
        wp_nav_menu(array('theme_location' => 'ru'));
    } elseif(get_locale() == 'en_US') {
        wp_nav_menu(array('theme_location' => 'en'));
    }
КОНТАКТЫ
Cookies | Privacy Policy | Terms and ConditionsSoftSprint ©