Функция esc_html__() в WordPress: безопасный перевод и вывод HTML-строк

ESC_HTML__() │ WP 2.8.0

Функция esc_html__() переводит заданную строку и безопасно преобразует её для использования в HTML-выводе. Если перевод не найден, или текстовый домен не загружен, будет возвращён оригинальный текст, но он будет обработан для безопасного отображения.

Применение

Эта функция предназначена для локализации текстов в WordPress. Она полезна, когда вам нужно обработать строки, чтобы удалить потенциально вредное содержимое, например, HTML-теги.

Синтаксис

esc_html__( $text, $domain );
  • $text (string) (обязательный) — текст, который нужно перевести.
  • $domain (string) — текстовый домен. Уникальный идентификатор для получения переведённых строк. По умолчанию: 'default'.

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

Строка. Возвращает переведённую и обработанную для HTML строку.

Примеры использования

Пример 1: Использование внутри тега <textarea>

Если перевод содержит HTML-теги или символы, которые нужно отобразить так, как есть (например, внутри тега <textarea>), то логично использовать эту функцию:

Пример 2: Альтернативный метод

Можно использовать esc_html() совместно с функцией __() для перевода:

HTML.', 'textdomain') ); ?>

Изменения

  • С версии 2.8.0 — функция была введена.

Код функции

function esc_html__( $text, $domain = 'default' ) {
    return esc_html( translate( $text, $domain ) );
}

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

Функции для очистки и валидации

  • esc_attr()
  • esc_html()
  • esc_js()
  • esc_url()

Функции для локализации

  • __() — базова�� функция для перевода текста.
  • _e() — вывод переведённого текста.
  • _x() — перевод с контекстом.
  • load_textdomain() — загрузка текстового домена.

Заключение

Использование функции esc_html__() позволяет безопасно переводить и выводить строки, защищая ваше приложение от уязвимостей, связанных с отображением HTML-кода. Это важный аспект обеспечения безопасности при разработке сайтов на WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *