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
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, так как объясняет, что делает функция, как её использовать и обеспечивает различные примеры.