Intereting Posts
почему не работает ajax, что add_action, зарегистрированное в wordpress post_author для wp_insert_attachment Создание пользовательских страниц панели администратора без создания плагина? Редактировать автора настраиваемого типа сообщения Невозможно изменить URL-адрес permalink после нажатия «ok» и «update» скрывать статус панели управления торговлей и отчеты от woo commerce от конкретных пользователей, но показывать другим пользователям Отключить видимость плагина в каталоге плагина Изменение стиля публикации по умолчанию для столбцов Отображать только детей пользовательской иерархической иерархии Замена таблицы List типа Post Мой пост не отображается Простой и правильный способ добавления пользователя Meta Получить оригинальное изображение Рекомендуемое изображение на главной странице Google не может выполнять поиск на моем сайте Отображение случайного текста из файла с помощью встроенного API AJAX WP

Тема не хочет загружать файлы локализации

Вот мой фрагмент functions.php:

function get_theme_text_domain() { //Same behavior if I return the string as 'return 'whatever' $theme = wp_get_theme(); return $theme->get('TextDomain'); } function tamtando_theme_setup() { load_textdomain(get_theme_text_domain(), get_template_directory() . '/languages'); [...] } add_action('after_setup_theme', 'tamtando_theme_setup'); 

$theme – массив со всеми свойствами темы: как и ожидалось. $theme->get('TextDomain') возвращает 'tamtando': как и ожидалось.

Я заметил, что при использовании __('somestring', get_theme_text_domain()) тема не переводила ни одну строку.

Затем я попытался понять, что происходит с отладчиком, при выполнении load_textdomain(get_theme_text_domain(), get_template_directory() . '/languages'); ,

Здесь я понял, что import_from_reader($reader) , расположенный на /wp-includes/pomo/mo.php, возвращал false, потому что, я думаю, $reader->readint32() возвращает false. Я полагаю, это происходит потому, что либо файл не может быть найден, либо имеет некоторые проблемы.

Я проверил: файл выглядит правильно, и я даже воссоздал его пару раз, используя разные инструменты, но проблема все еще присутствует.

Это не первая тема, которую я пишу, и в основном я использую всегда одни и те же шаблоны, поэтому я действительно потерял эту проблему.

Кто-нибудь знает причину такого поведения?

Одна ошибка: функция load_theme_textdomain() , а не load_textdomain() . Первый используется для Темы для определения / загрузки текстового домена; я считаю, что последнее для ядра . (Плагины имеют аналогичную функцию, load_plugin_textdomain() .)

Попробуйте использовать:

 load_theme_textdomain( get_theme_text_domain(), get_template_directory() . '/languages' );