_x

Переводит указанный текст, на основе указанного контекста. Использует файл перевода.

_x() нужно использовать, чтобы не было путаницы, когда одинаковый текст может переводиться по разному, исходя из того в каком месте (в каком контексте) он используется.

_x() работает точно также как и __(), только нужно указать второй параметр $context, строку.

Чтобы сразу вывести результат на экран, используйте _ex() это аналог _e() только с контекстом.

Как добавить контекст в poedit?

Строка контекста должна быть указана в .pot или .po файле, чтобы во время перевода было понятно в каком контексте нужно переводить текст.

Чтобы добавить контекст в программе poedit. При добавлении _x как ключа для поиска строк, добавьте его так:

Это указатель для poedit, искать _x и получать первый аргумент, как строку для перевода: msgid, а второй, как строку контекста: msgctxt.

Хуков нет.

Возвращает

Переведенную строку.

Использование

_x( $text, $context, $domain );
$text(строка) (обязательный)
Текст, который нужно перевести.
$context(строка) (обязательный)
Дополнительная строка (контекст) по которой будет искаться перевод в файле перевода.
$domain(строка)
ID файла перевода, указывается при регистрации и подключении файла перевода.
По умолчанию: ‘default’

Примеры

#1 Перевод строки с контекстом

<?php
function _x( $text, $context, $domain = 'default' ) {
	return translate_with_gettext_context( $text, $context, $domain );
}

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *