Intereting Posts
Javascript и таблица стилей на дочерней странице Несколько tax_queries: отображает заголовки сообщений из нескольких пользовательских таксономий Использование одинакового слизня с несколькими типами сообщений изменить set_post_thumbnail_size в соответствии с административной страницей типа сообщения Как вы можете делать постоянную ссылку для пользовательских типов сообщений и таксономии? Где get_post_meta () перейти, чтобы получить $ post-> ID get_post_meta () пуст, и работают $ post-> ID & get_the_id () Метабокс – почему они не ожидают php? Функция Ajax возвращает -1 пример функции build_query? не удалось войти в локальную страницу wp-admin на сервере XAMPP Как я могу создать шаблон AMP без плагина? заблокировать страницу от выведенных из системы пользователей и перенаправить на главную страницу Пользовательские сообщения и сообщения – next_post_link и previous_post_link не работают вместе Отображение фильтра портфолио по категориям Заказ (в алфавитном порядке) Возвращать только количество из запроса wp_query?

Найти правильный «текстовый домен» в теме

У меня есть клиент с WordPress-темой, Невада , и у нас возникают проблемы с тем, что для этого работают встроенные переводы. Тема содержит .mo-файлы для английского, немецкого и словенского языков, и, похоже, наш плагин WPML. Однако они не переводят любой текст шаблона внутри темы. Переводы контента, который мы создали, отлично работают.

Следуя инструкциям здесь: http://wpml.org/documentation/getting-started-guide/theme-localization/ , глядя на раздел «Вариант 2: Использование файла .mo для локализации темы», это звучит так, как будто мне нужно do вводит textdomain для темы.

Проблема в том, что я не знаю, что это такое, или как ее найти. Я попытался прорваться через сами файлы темы, но любой текст выводится за многие многослойные функции. Хуже того, ни у меня, ни у моего клиента нет учетной записи поддержки у поставщиков тем (но у нас есть действующая лицензия!), И они вообще не помогают.

Как найти текстовый домен, чтобы WPML работал с этой темой?

Обновить

Когда я открываю один из файлов .po, я вижу строки вроде:

 #: template-part-teaser.php:41 #@ Nevada msgid "404 Error" msgstr "404 Error" 

Поэтому я попытался ввести «Неваду» в качестве текстового домена в плагине WPML, но это ничего не меняло для меня

Solutions Collecting From Web of "Найти правильный «текстовый домен» в теме"

Внутри кода вы можете увидеть любой синтаксис, как любой из следующих?

 __( 'Hello, dear user!', 'my-text-domain' ) _e( 'Your Ad here', 'my-text-domain' ) 

То есть строки, начинающиеся с __ (двойные подчеркивания) или _e. Если да, то, где указано выше, мой текстовый домен, вы должны найти имя своего текстового домена.

В большинстве случаев ответ @ vancoder абсолютно правильный. Моя ситуация кажется довольно уникальной, но я хочу поделиться своим опытом, чтобы она помогла кому-то другому.

В случае этой темы в Nevada стандартные функции не используются в файлах шаблонов. По-видимому, Nevada использует структуру Lambda (что-то совершенно чуждо мне), и поэтому любой вывод текста происходит с вызовом функции lambda_translate. После копания и копания я отказался от попыток отследить эти функции до вызова __() или _e() .

Вместо этого, чтобы найти текстовый домен, я надел шляпу Linux и ввел эту команду в папку темы Nevada.

 grep -r "load_theme_textdomain" . 

Разумеется, в файле functions.php функция load_theme_textdomain была там с текстовым доменом.