WP_KSES_POST(): очистка HTML-тегов поста │ Примеры и использование

WP_KSES_POST() │ WP 2.9.0

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

Эта функция является оберткой для следующего кода:

wp_kses( $data, 'post' );

Вы можете использовать эту функцию для очистки необработанных данных, введённых пользователем, которые находятся в массиве $_POST:

$some_array = array_map( 'wp_kses_post', $_POST['some_array'] );

Эта функция ожидает строку без символов слэша! Это значит, что перед использованием вам нужно убрать все слэши, используя wp_unslash(), которые WordPress автоматически добавляет к данным, например, к $_POST, см. wp_magic_quotes().

Время выполнения:

  • 1 раз — 0.000492 сек (быстро)
  • 50000 раз — 10.07 сек (медленно)
  • PHP 7.1.5, WP 4.8

Нет хуков.

Возврат

Функция возвращает строку. Очищенное содержимое поста с разрешенными HTML-тегами и атрибутами.

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

wp_kses_post( $data );

Аргументы:

  • $data (строка) (обязательный) – содержимое поста, которое нужно очистить.

Примеры

Пример 1: Очистка строки

Функция очищает строку $str от нежелательных HTML-тегов.

$str = wp_unslash( $_POST['text'] );
$str = wp_kses_post( $str );

// Теперь $str можно безопасно записать в базу данных или отобразить

var_dump( wp_kses_post( '' ) ); // string(0) ""
var_dump( wp_kses_post( ''foo' ) ); // string(4) "'foo"
var_dump( wp_kses_post( ''foo

bar

' ) ); // string(15) "'foo

bar

"

Пример 2: Дополнительные примеры

Смотрите дополнительные примеры использования wp_kses().

Изменения

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

Код функции

Функция wp_kses_post() реализована в файле wp-includes/kses.php:

function wp_kses_post( $data ) {
return wp_kses( $data, 'post' );
}

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

  • allowed_tags()
  • wp_filter_kses()
  • wp_filter_nohtml_kses()
  • wp_kses()
  • wp_kses_allowed_html()
  • wp_kses_array_lc()
  • wp_kses_data()
  • wp_kses_hair()
  • wp_kses_uri_attributes()
  • wp_kses_version()

Безопасность

Функции, связанные с безопасностью:

  • check_admin_referer()
  • check_ajax_referer()
  • sanitize_url()
  • wp_create_nonce()
  • wp_generate_password()
  • wp_hash()
  • wp_hash_password()
  • wp_http_validate_url()
  • wp_nonce_ays()
  • wp_nonce_field()
  • wp_nonce_url()
  • wp_referer_field()
  • wp_salt()
  • wp_sanitize_redirect()
  • wp_verify_nonce()

Этот текст станет полезным для начинающих пользователей WordPress, так как объясняет, что делает функция, как её использовать и обеспечивает различные примеры.

Leave a Reply

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