load_child_theme_textdomain()
Загружает файл перевода дочерней темы (.mo) в память, для дальнейшей работы с ним.
Это обертка для load_theme_textdomain(). Создана для удобного подключения файла перевода для дочерней темы.
Создание перевода для подтемы хорошо скажется на оптимизации и структурировании файлов. Например, используется тема twentyfifteen, к которой уже подключаются файлы перевода через load_theme_textdomain() и для темы уже есть перевод в папке languages. Мы создали подтему со множество новых строк с переводом. Мы можем добавить эти строки в файлы родительской темы, но при обновлении мы потеряем изменения. Чтобы этого не произошло, нужно создать еще один файл перевода.
.mo должен называться точно как локаль, например, ru_RU.mo
Следует вызывать во время хука after_setup_theme.
Хуков нет.
Возвращает
true|false
. True, когда .mo файл подключен, false в противном случае.
Использование
load_child_theme_textdomain( $domain, $path );
- $domain(строка) (обязательный)
- Идентификатор, который будет использоваться позднее в функциях перевода: __() _e() можно будет обратиться именно к этой строке перевода. Можно указать такой же как и у родительской темы.
- $path(строка)
- Путь до папки с файлом .mo. По умолчанию указывается путь до каталога подтемы: get_stylesheet_directory().
По умолчанию: false
Примеры
#1 Подключим файл перевода дочерней темы
add_action( 'after_setup_theme', 'my_child_theme_setup' ); function my_child_theme_setup(){ load_child_theme_textdomain( 'my_child_theme', get_stylesheet_directory() . '/languages' ); }
.mo файл должен находиться в папке languages
в подтеме и иметь название локали языка, например: languages/de_DE.mo.
Список изменений
С версии 2.9.0 | Введена. |
Код load_child_theme_textdomain() load child theme textdomain WP 6.5.2
function load_child_theme_textdomain( $domain, $path = false ) { if ( ! $path ) { $path = get_stylesheet_directory(); } return load_theme_textdomain( $domain, $path ); }