WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

__() WP 1.2.1

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

Если перевести не удалось (нет подходящего файла перевода), то вернется оригинальная строка.

l10n — это аббревиатура локализации: localization (l + 10 букв + n).

Работает на основе: translate()
✈ 1 раз = 0.000019с = очень быстро | 50000 раз = 0.07с = скорость света | PHP 7.1.2, WP 4.7.3

Хуков нет.

Возвращает

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

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

$text = __( $text, $domain );
$text(строка) (обязательный)
Текст, который нужно перевести.
$domain(строка)
Идентификатор файла перевода, указывается при регистрации и подключении файла перевода. Если не указать, то будет использован дефолтный файл перевода, который используется в WordPress.
По умолчанию: 'default'

Примеры

#1. Переведем строку

Пример использования функции в базовой теме WordPress:

$str = __( 'Comment: ' );

Если используется русский файл локализации, то вернет: "Комментарий:".

До WordPress 4.2: русский файл локализации значит, что константа WPLANG определена как ru_RU в файле wp-config.php - define('WPLANG', 'ru_RU');. Для такого перевода, без указания параметра $domain будет использоваться файл ru_RU.mo из каталога wp-content/languages

С версии 4.2, константа WPLANG была отменена и теперь язык изменяется в основных настройках сайта.

#2 Перевод строки с указанием своего домена

Чтобы перевести строку и при этом взять перевод из своего файла, нужно указывать второй параметр $domain. Он свяжет строку для перевода с конкретным файлом перевода. $domain и файл перевода регистрируется функцией load_textdomain();

$str = __( 'Comment: ', 'mydomain' );

Код : wp-includes/l10n.php WP 5.2

<?php
function __( $text, $domain = 'default' ) {
	return translate( $text, $domain );
}

Cвязанные функции

Из метки: localize (l10n i18n локализация Internationalization)

Еще из раздела: Локализация

Wpnew.ru

wpnew.ru советую изучить.

wpnew.ru

5 комментов
  • DS-Invest cайт: ds-invest.net

    Функция названа двумя знаками подчеркивания, которые выглядят как одно большое подчеркивание и нечего более. Кто сказал что у программистов нет чувства юмора?
    mosking ok

    Ответить4 года назад #
    • Otshelnik-Fm202 cайт: otshelnik-fm.ru
      l10n — это аббревиатура локализации.
      localization (l 10 букв после, и n ) - так что тут тоже и юмор и краткость
      2
      Ответить3.5 года назад #
  • seo-rules cайт: seo-rules.ru

    Спасибо за информацию, которую вы даете нам бесплатно. Что без вас бы делал.

    2
    Ответить8 мес назад #
  • @ webmaster

    Доброго времени суток! Скорее всего вопрос не по теме, но все же ..
    Вообщем, есть плагин. Есть файлы перевода. Но файлах перевода отсутствуют некоторые фразы. Эти фразы не заключены в кавычки "///", а прописываются, например, так:

    Create New Message

    Так вот, если возможность перевести фразу [Create New Message] без правки в самом *.php файле (так как при обновлении плагина, придется все повторить)?
    Может быть реализуется через function.php? Спасибо.

    Ответить8 мес назад #
  • Помогите, пожалуйста, разобраться почему не переводится текст.
    Прописываю так:
    . ''. __($options['message_text'],'Cookie-Notice').''
    Попробовал другой вариант e_() , не переводится текст.
    Пробовал указать текст:

    . '<div class="cookie-notice-container"><span id="cn-notice-text">'. __('We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.','cookie-notice').'</span>'

    Файл .mo создал и загрузил через poedit ( у плагина был готовый шаблон для переводов )

    В итоге, у меня либо отображается англ.текст, либо текст пропадает. Называл файл так-же и просто ru_RU.

    Ответить5 мес назад #
Здравствуйте, !     Войти . Зарегистрироваться