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

wp_filter_post_kses() WP 2.0

Очищает контент, оставляя в нем только разрешенные HTML теги и добавляет экранирующие слэши.

Тоже что wp_kses_post(), только ожидает экранированные данными.

Функция удаляет слэши (stripslashes()) из переданного текста, обрабатывает его, а затем добавляет слэши обратно. Поэтому если вы очищаете $_POST данные, то делать это надо до того как слэши в тексте будут удалены, перед добавлением данных в БД.

Допустимые теги различаются в зависимости от того какие у пользователя права.

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

Хуков нет.

Возвращает

очищенный контент.

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

<?php wp_filter_post_kses( $data ) ?>
$data(строка) (обязательный)
Контент поста, который нужно отфильтровать.
По умолчанию: нет

Примеры

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

Так функция сработает если вы администратор:

$data = '<p data-url="foo">Автомат.</p>
<span>правилам</span>
<div>Проверка div</div>
<script>Проверка script</script>
<em>Пример. Исходные числа:  66, 43.</em>
<ol>
	<li>Списки</li>
</ol>';

$data = wp_filter_post_kses( $data );

echo htmlspecialchars( $data );

/*
Выведет:
<p>Автомат.</p>
<span>правилам</span>
<div>Проверка div</div>
Проверка script
<em>Пример. Исходные числа:  66, 43.</em>
<ol>
	<li>Списки</li>
</ol>
*/

Заметки

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

Код wp filter post kses: wp-includes/kses.php WP 4.8.2

<?php
function wp_filter_post_kses( $data ) {
	return addslashes( wp_kses( stripslashes( $data ), 'post' ) );
}

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

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

wp_filter_post_kses Комментариев нет

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

Ваш комментарий