Дочерняя тема вордпресс и локализация

Сторонний перевод шаблона удаляется при обновлении темы WordPress. Обновляемся и сохраняем перевод

Обновляю WordPress тему в которой установлен сторонний, отдельно скачанный перевод шаблона, а он удаляется (автор темы не сделал перевода при установке темы, хотя и подготовил тему для перевода). Кроме того, я пользуюсь не основной темой, а делаю дочернюю, чтобы можно было безболезненно обновлять основную тему и сохранять изменения. Не буду рассказывать про дочерние темы, т.к. много текста на эту тему есть в Гугле. Коротко говоря, суть дочерних тем в том, что созданные в них файлы заменяют собой аналогичные файлы родительской темы. Но этот финт не проходит для файлов локализации. Чтобы это исправить, методом гугленья и проб и ошибок было установлено, что можно заставить использовать перевод из директории доченней темы «/languages» если в дочерней теме создать файл functions.php с таким содержимым:

<?php
/*
Подгрузка перевода основной темы из дочерней темы (чтобы сторонний перевод не удалялся при обновлении основной темы)
*/

function my_child_theme_setup() {
load_child_theme_textdomain( ‘ИМЯ ОСНОВНОЙ ТЕМЫ‘, get_stylesheet_directory() . ‘/languages’ );
}
add_action( ‘after_setup_theme’, ‘my_child_theme_setup’ );

?>

После этого, нужно просто скопировать перевод из директории основной темы в директорию дочерней темы «/languages».
Имя основной темы было вытащено из кода файла «functions.php» основной темы, нашел я его в таком участке кода:

load_theme_textdomain( 'ИМЯ ОСНОВНОЙ ТЕМЫ', get_template_directory() . '/languages' );

Надеюсь, что всё понятно, хотя сам не очень понимаю. Если нет — комментируйте, вместе будем думать. Если вы опытный программист, в отличии от, и заметили глупую логику в том, что я делаю, буду благодарен за советы и замечания. Невзирая на то, что все работает. Спасибо за внимание.

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5Звёзд: 6Звёзд: 7Звёзд: 8Звёзд: 9Звёзд: 10 (2 оценок, среднее: 10,00 из 10)
Загрузка...

2 thoughts on “Сторонний перевод шаблона удаляется при обновлении темы WordPress. Обновляемся и сохраняем перевод

  1. Удинственный автор, указавший на зависимость от load_child_theme_textdomain( ‘ИМЯ ОСНОВНОЙ ТЕМЫ‘,
    т.е. совпадать должен не текстовый домен дочка, а родителя.

    • Здравствуйте!
      Спасибо за комментарий. Действительно, я обычно пишу в блог, только если не нашел соответствующей информации раньше.

Добавить комментарий

Ваш e-mail не будет опубликован.