WordPress как на ладони
wordpress jino

wp_filter_kses() WP 1.0.1

Очищает текст, оставляя в нем только разрешенные HTML теги. Ожидает экранированные данные. Тип очистки определяется функцией current_filter().

Перед очисткой удаляются все экранные слэши, а перед возвращение результата эти слэши добавляются обратно.

Если передан текст без экранированных слэшей, то в результате они будут добавлены (см. php функцию addslashes()).

Копия этой функции это wp_kses_data(), только она никак не обрабатывает слэши в переданном тексте и обрабатывает текст как есть.

wp_filter_kses() обычно предпочтительнее, чем wp_kses_data(), потому что wp_magic_quotes() чистит $_GET, $_POST, $_COOKIE, $_SERVER и $_REQUEST на раннем этапе в системе хуков, сразу после фильтра plugins_loaded и до init

Все разрешенные теги по умолчанию находятся в глобальной переменной $allowedtags.

KSES - это фильтр безопасности написанный на PHP для очистки текста с HTML тегами. Он удаляет все «опасные» элементы и призван защитить от SQL инъекции и XSS.

Работает на основе: wp_kses()

Хуков нет.

Возвращает

Строку. Отфильтрованный текст.

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

<?php wp_filter_kses( $data ) ?>
$data(строка) (обязательный)
Текст, из которого нужно удалить нежелательные HTML теги. Ожидается что текст экранирован ().
По умолчанию: нет

Примеры

#1. Демонстрация работы функции:

$text = "<a href='some'>текст</a> <div>текст</div>";

echo wp_filter_kses( $text );

//вернет: <a href=\'some\'>текст</a> текст

Заметки

Использует глобальную переменную: global $allowedtags.

Код wp filter kses: wp-includes/kses.php VER 4.9.1

<?php
function wp_filter_kses( $data ) {
	return addslashes( wp_kses( stripslashes( $data ), current_filter() ) );
}

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

Из метки: kses (очистка html)

Еще из раздела: Очистка данных

wp_filter_kses 2 комментария
  • Константин

    А где можно отредактировать этот фильтр? Мне понадобилось не вырезать теги таблиц.

    Ответить1.6 года назад #

Здравствуйте, !

Ваш комментарий
Предпросмотр