get_translations_for_domain() WP 2.8.0

Повертає об’єкт перекладу для зазначеного домену перекладу (textdomain).

Основа для:
translate()
1 раз – 0.000001 сек
(швидкість світла) | 50000 разів – 0.43 сек
(дуже швидко) |
PHP 7.2.16, WP 5.1.1

Хуків немає.

Повертає

Translations|NOOP_Translations.

Якщо для вказаного домену перекладу є .mo файлу перекладу (переклад завантажений), то поверне об’єкт класу MO .

MO Object
(
	[_nplurals] => 3
	[filename:MO:private] => F:serversiteswp-test.ru/wp-content/languages/plugins/classic-editor-ru_RU.mo
	[entries] => Array()
	[headers] => Array()
)

Якщо для вказаного домену перекладу немає .mo файлу перекладу (переклад не завантажено), то поверне об’єкт класу NOOP_Translations :

NOOP_Translations Object (
	[entries] => Array()
	[headers] => Array()
)

Використання

get_translations_for_domain($domain);
$domain
(рядок) (обов’язковий)
Домен перекладу (текстовий домен). Унікальний ідентифікатор для одержання перекладених рядків.

Приклади

0

#1 Отримаємо дані про переклади для плагіна Classic Editor

У плагіна Classic Editor текстовий домен classic-editor. Отримаємо дані щодо нього:

$data = get_translations_for_domain( 'classic-editor' );

print_r ($ data)

Результат:

GitHub

MO Object
(
    [_nplurals] => 3
    [filename:MO:private] => F:serversiteswp-test.ru/wp-content/languages/plugins/classic-editor-ru_RU.mo
    [entries] => Array
        (
            [Allow site admins to change settings] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Allow site admins to change settings
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Дозволити адміністраторам сайту змінювати налаштування
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Allow users to switch editors] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Allow users to switch editors
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Дозволити користувачам перемикання редакторів
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [By default the Block Editor is replaced with the Classic Editor and users cannot switch editors.] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Залежно від Block Editor is replaced with Classic Editor and users cannot switch editors.
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => За замовчуванням редактор блоків буде замінено на класичний редактор, і користувачі не зможуть вибирати редактор.
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Change settings] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Change settings
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Змінити налаштування
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Change the %1$sClassic Editor settings%2$s.] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Змінити %1$sКласичний Editor settings%2$s.
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Змінити налаштування %1$sClassic Editor%2$s.
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Classic Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Classic Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Classic Editor
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Default Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Default Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редактор за замовчуванням
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Default editor for all sites] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Default editor for all sites
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редактор за промовчанням для всіх сайтів
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Default editor for all users] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Default editor for all users
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редактор за промовчанням для всіх користувачів
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Edit “%s” in the Block Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Edit “%s” in the Block Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редагувати “%s” у редакторі блоків
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Edit “%s” in the Classic Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Edit “%s” in the Classic Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редагувати “%s” у класичному редакторі
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редактор
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Editor Name Block Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] => Editor Name
                    [singular] => Block Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Редактор блоків
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Editor Name Classic Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] => Editor Name
                    [singular] => Classic Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Класичний редактор
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Editor Name Edit (Блок Editor)] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] => Editor Name
                    [singular] => Edit (Block Editor)
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Змінити (редактор блоків)
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Editor Name Edit (Classic Editor)] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] => Editor Name
                    [singular] => Edit (Classic Editor)
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Змінити (класичний редактор)
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Editor Settings] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Editor Settings
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Налаштування редактора
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Enables the WordPress classic editor та old-style Edit Post screen with TinyMCE, Meta Boxes, etc. Supports the older plugins that extend this screen.] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Забезпечити WordPress класичний editor і old-style Edit Post screen with TinyMCE, Meta Boxes, etc. Supports the older plugins that extend this screen.
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Включає класичний редактор WordPress, старий варіант екрана редагування записів (TinyMCE, мета поля та ін.). Підтримує інші плагіни розширення старого редактора.
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [No] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => No
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Ні
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Settings] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Settings
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Налаштування
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Switch to Block Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Switch to Block Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Перейти на редактор блоків
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Switch to Classic Editor] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Switch to Classic Editor
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Перейти на класичний редактор
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [The Classic Editor plugin prevents use of the new Block Editor.] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Classic Editor plugin prevents use of the New Block Editor.
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Плагін Classic Editor запобігає використанню нового редактора блоків.
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [WordPress Contributors] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => WordPress Contributors
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Учасники розробки WordPress
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [Yes] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => Yes
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => Так
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [https://github.com/WordPress/classic-editor/] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => https://github.com/WordPress/classic-editor/
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => https://github.com/WordPress/classic-editor/
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

            [https://wordpress.org/plugins/classic-editor/] => Translation_Entry Object
                (
                    [is_plural] =>
                    [context] =>
                    [singular] => https://wordpress.org/plugins/classic-editor/
                    [Plural] =>
                    [translations] => Array
                        (
                            [0] => https://ua.wordpress.org/plugins/classic-editor/
                        )

                    [translator_comments] =>
                    [extracted_comments] =>
                    [references] => Array
                        (
                        )

                    [flags] => Array
                        (
                        )

                )

        )

    [headers] => Array
        (
            [PO-Revision-Date] => 2019-02-20 19:00:57+0000
            [MIME-Version] => 1.0
            [Content-Type] => text/plain; charset=UTF-8
            [Content-Transfer-Encoding] => 8bit
            [Plural-Forms] => nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);
            [X-Generator] => GlotPress/2.4.0-alpha
            [Language] => ru
            [Project-Id-Version] => Plugins - Classic Editor - Stable (latest release)
        )

    [_gettext_select_plural_form] => Array
        (
            [0] => Plural_Forms Object
                (
                    [tokens:protected] => Array
                        (
                            [0] => Array
                                (
                                    [0] => var
                                )

                            [1] => Array
                                (
                                    [0] => value
                                    [1] => 10
                                )

                            [2] => Array
                                (
                                    [0] => op
                                    [1] => %
                                )

                            [3] => Array
                                (
                                    [0] => value
                                    [1] => 1
                                )

                            [4] => Array
                                (
                                    [0] => op
                                    [1] => ==
                                )

                            [5] => Array
                                (
                                    [0] => var
                                )

                            [6] => Array
                                (
                                    [0] => value
                                    [1] => 100
                                )

                            [7] => Array
                                (
                                    [0] => op
                                    [1] => %
                                )

                            [8] => Array
                                (
                                    [0] => value
                                    [1] => 11
                                )

                            [9] => Array
                                (
                                    [0] => op
                                    [1] => !=
                                )

                            [10] => Array
                                (
                                    [0] => op
                                    [1] => &&
                                )

                            [11] => Array
                                (
                                    [0] => value
                                    [1] => 0
                                )

                            [12] => Array
                                (
                                    [0] => var
                                )

                            [13] => Array
                                (
                                    [0] => value
                                    [1] => 10
                                )

                            [14] => Array
                                (
                                    [0] => op
                                    [1] => %
                                )

                            [15] => Array
                                (
                                    [0] => value
                                    [1] => 2
                                )

                            [16] => Array
                                (
                                    [0] => op
                                    [1] => >=
                                )

                            [17] => Array
                                (
                                    [0] => var
                                )

                            [18] => Array
                                (
                                    [0] => value
                                    [1] => 10
                                )

                            [19] => Array
                                (
                                    [0] => op
                                    [1] => %
                                )

                            [20] => Array
                                (
                                    [0] => value
                                    [1] => 4
                                )

                            [21] => Array
                                (
                                    [0] => op
                                    [1] => <=
                                )

                            [22] => Array
                                (
                                    [0] => op
                                    [1] => &&
                                )

                            [23] => Array
                                (
                                    [0] => var
                                )

                            [24] => Array
                                (
                                    [0] => value
                                    [1] => 100
                                )

                            [25] => Array
                                (
                                    [0] => op
                                    [1] => %
                                )

                            [26] => Array
                                (
                                    [0] => value
                                    [1] => 10
                                )

                            [27] => Array
                                (
                                    [0] => op
                                    [1] => <
                                )

                            [28] => Array
                                (
                                    [0] => var
                                )

                            [29] => Array
                                (
                                    [0] => value
                                    [1] => 100
                                )

                            [30] => Array
                                (
                                    [0] => op
                                    [1] => %
                                )

                            [31] => Array
                                (
                                    [0] => value
                                    [1] => 20
                                )

                            [32] => Array
                                (
                                    [0] => op
                                    [1] => >=
                                )

                            [33] => Array
                                (
                                    [0] => op
                                    [1] => ||
                                )

                            [34] => Array
                                (
                                    [0] => op
                                    [1] => &&
                                )

                            [35] => Array
                                (
                                    [0] => value
                                    [1] => 1
                                )

                            [36] => Array
                                (
                                    [0] => value
                                    [1] => 2
                                )

                            [37] => Array
                                (
                                    [0] => op
                                    [1] =>?:
                                )

                            [38] => Array
                                (
                                    [0] => op
                                    [1] =>?:
                                )

                        )

                    [cache:protected] => Array
                        (
                        )

                )

            [1] => get
        )

)

Виведемо всі оригінальні рядки та їх переклади. Дані переклади зберігаються у властивості entries, яка містить масив об’єктів Translation_Entry для кожного рядка.

$data = get_translations_for_domain( 'classic-editor' );

if ( $data instanceof MO && $data->entries ) {
	foreach ( $data->entries as $entry ) {
		echo "Оригінальний рядок: {$entry->singular} n";
		echo "Перекладений рядок: {$entry->translations[0]} nn";
	}
}

Результат:

GitHub

Оригінальний рядок: Allow site admins to change settings
Перекладений рядок: Дозволити адміністраторам сайту змінювати налаштування

Оригінальний рядок: Allow users to switch editors
Перекладний рядок: Дозволити користувачам перемикання редакторів

Оригінальний рядок: By default the Block Editor is replaced with the Classic Editor and users cannot switch editors.
Перекладений рядок: За замовчуванням редактор блоків буде замінено на класичний редактор, і користувачі не зможуть вибирати редактор.

Оригінальний рядок: Change settings
Перекладений рядок: Змінити налаштування

Оригінальний рядок: Change the %1$sClassic Editor settings%2$s.
Перекладений рядок: Змінити параметри %1$sClassic Editor%2$s.

Оригінальний рядок: Classic Editor
Перекладений рядок: Classic Editor

Оригінальний рядок: Default Editor
Перекладений рядок: Редактор за промовчанням

Оригінальний рядок: Default editor for all sites
Перекладений рядок: Редактор за промовчанням для всіх сайтів

Оригінальний рядок: Default editor for all users
Перекладний рядок: Редактор за промовчанням для всіх користувачів

Оригінальний рядок: Edit “%s” in the Block Editor
Перекладений рядок: Редагувати “%s” у редакторі блоків

Оригінальний рядок: Edit “%s” in the Classic Editor
Перекладений рядок: Редагувати “%s” у класичному редакторі

Оригінальний рядок: Editor
Перекладений рядок: Редактор

Оригінальний рядок: Block Editor
Перекладений рядок: Редактор блоків

Оригінальний рядок: Classic Editor
Перекладений рядок: Класичний редактор

Оригінальний рядок: Edit (Block Editor)
Перекладений рядок: Змінити (редактор блоків)

Оригінальний рядок: Edit (Classic Editor)
Перекладений рядок: Змінити (класичний редактор)

Оригінальний рядок: Editor Settings
Перекладений рядок: Налаштування редактора

Оригінальний рядок: Enables WordPress classic editor і old-style Edit Post screen with TinyMCE, Meta Boxes, etc. Supports the older plugins that extend this screen.
Перекладений рядок: Включає класичний редактор WordPress, старий варіант екрана редагування записів (TinyMCE, мета поля та ін.). Підтримує інші плагіни розширення старого редактора.

Оригінальний рядок: No
Перекладений рядок: Ні

Оригінальний рядок: Settings
Перекладений рядок: Налаштування

Оригінальний рядок: Switch to Block Editor
Перекладений рядок: Перейти до редактора блоків

Оригінальний рядок: Switch to Classic Editor
Перекладений рядок: Перейти до класичного редактора

Оригінальний рядок: The Classic Editor plugin prevents use of the new Block Editor.
Перекладений рядок: Плагін Classic Editor запобігає використанню нового редактора блоків.

Оригінальний рядок: WordPress Contributors
Учасники розробки WordPress

Оригінальний рядок: Yes
Перекладений рядок: Так

Оригінальний рядок: https://github.com/WordPress/classic-editor/
Перекладений рядок: https://github.com/WordPress/classic-editor/

Оригінальний рядок: https://wordpress.org/plugins/classic-editor/
Перекладений рядок: https://ua.wordpress.org/plugins/classic-editor/

нотатки

  • Global. MO[]. $l10n

список змін

З версії 2.8.0Введено.

Код get_translations_for_domain() WP 6.0.2

function get_translations_for_domain( $domain ) {
	global $l10n;
	if ( isset( $l10n[ $domain ] ) || ( _load_textdomain_just_in_time( $domain ) && isset( $l10n[ $domain ] ) ) ) {
		return $l10n[$domain];
	}

	static $noop_translations = null;
	if ( null === $noop_translations ) {
		$noop_translations = New NOOP_Translations;
	}

	return $noop_translations;
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *