Функция возвращает перевод строки, выглядит она следующим образом:
_x( $text, $context, $domain = 'default' ) |
- $text
- Строка для перевода.
- $context
- Контекст, значение.
- $domain
- Идентификатор перевода, подробнее здесь.
Пошаговое руководство по работе с функцией _x()
Шаг 1. Использование в теме и для чего собственно она нужна
В своём руководстве по переводу плагинов и тем WP я писал, что есть такие функции, как __() и _e(), куда в качестве параметра передается строка, которую WordPress должен будет перевести, выглядит это так:
_e('bank', 'misha_test'); |
Окей… А вы знаете, как переводится слово bank? Ведь это не только «банк», а ещё и «берег»! По сути это слова-омонимы (одинаковые по написанию и разные по значению). И как это обозначить в переводе?
Благодаря функции _x()
никаких хитрых манипуляций делать не придется.
_x('bank', 'bank of the river', 'misha_test'); // берег реки |
_x('bank', 'bank of England', 'misha_test'); // банк Англии |
Функцию не обязательно использовать для омонимов, это также могут быть и фразы, смысл которых различен в зависимости от того, в каком контексте они используются.
Шаг 2. Настройка PoEdit
В Poedit функция добавляется в виде строки _x:1,2c
, вот так:
Шаг 3. Переводим
После того, как мы добавили необходимые настройки в файл перевода в Poedit, можно нажать кнопку синхронизации «Обновить каталог».
Повторюсь, если вам что-то непонятно, пожалуйста, прочтите сначала моё руководство по переводу плагинов и тем WordPress.
Также вы можете использовать функцию _ex(), если хотите не возвратить результат, а сразу вывести его на экран. Можно и echo _x()
конечно же.
Источник: misha.blog