# translate_with_gettext_context()

URL: https://chugunov.pro/api-wordpress/functions/translate_with_gettext_context/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 5.5.0.

## Сигнатура

```php
translate_with_gettext_context( string $text, string $context, string $domain = 'default' ): string
```

## Описание

Если перевода нет или текстовый домен не загружен, возвращается исходный текст.
_Примечание:_ Не используйте translate_with_gettext_context() напрямую, используйте _x() или связанные функции.

## Параметры

- `$text` `string` — обязательный. Текст для перевода.
- `$context` `string` — обязательный. Контекстная информация для переводчиков.
- `$domain` `string` — необязательный, по умолчанию `'default'`. Текстовый домен. Уникальный идентификатор для получения переведённых строк.
  
  Значение по умолчанию: 'default'.

## Возвращаемое значение

`string`

## Исходный код

Файл: `wp-includes/l10n.php:261`

```php
function translate_with_gettext_context( $text, $context, $domain = 'default' ) {
	$translations = get_translations_for_domain( $domain );
	$translation  = $translations->translate( $text, $context );

	/**
	 * Filters text with its translation based on context information.
	 *
	 * @since 2.8.0
	 *
	 * @param string $translation Translated text.
	 * @param string $text        Text to translate.
	 * @param string $context     Context information for the translators.
	 * @param string $domain      Text domain. Unique identifier for retrieving translated strings.
	 */
	$translation = apply_filters( 'gettext_with_context', $translation, $text, $context, $domain );

	/**
	 * Filters text with its translation based on context information for a domain.
	 *
	 * The dynamic portion of the hook name, `$domain`, refers to the text domain.
	 *
	 * @since 5.5.0
	 *
	 * @param string $translation Translated text.
	 * @param string $text        Text to translate.
	 * @param string $context     Context information for the translators.
	 * @param string $domain      Text domain. Unique identifier for retrieving translated strings.
	 */
	$translation = apply_filters( "gettext_with_context_{$domain}", $translation, $text, $context, $domain );

	return $translation;
}
```

## История изменений

- 5.5.0 — Introduced gettext_with_context-{$domain} filter.
- 2.8.0 — Introduced.

## Связанные

Использует: [`get_translations_for_domain`](https://chugunov.pro/api-wordpress/functions/get_translations_for_domain/), `Translations::translate`, [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).
Используется в: [`_register_theme_block_patterns`](https://chugunov.pro/api-wordpress/functions/_register_theme_block_patterns/), [`translate_settings_using_i18n_schema`](https://chugunov.pro/api-wordpress/functions/translate_settings_using_i18n_schema/), [`translate_user_role`](https://chugunov.pro/api-wordpress/functions/translate_user_role/), [`_x`](https://chugunov.pro/api-wordpress/functions/_x/), [`esc_attr_x`](https://chugunov.pro/api-wordpress/functions/esc_attr_x/), [`esc_html_x`](https://chugunov.pro/api-wordpress/functions/esc_html_x/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/translate_with_gettext_context/
