Watson — Совершенно новый опыт в создании сайтов и лендигов

3000+ дизайнов

ИИ генерация

Видео-обучение

Функция wp_kses() используется для фильтрации HTML-кода в WordPress, позволяя только безопасные теги и атрибуты.
Быстрая навигация по записи

Описание функции wp_kses()

Функция wp_kses() позволяет фильтровать HTML-код, разрешая только определенные теги и атрибуты. Это помогает предотвратить XSS-атаки и другие типы вредоносного кода, обеспечивая безопасность пользовательского ввода. Функция используется в ситуациях, когда необходимо сохранить части HTML-кода, но при этом гарантировать, что они не содержат потенциально опасных элементов.

Она часто применяется в формах, комментариях и других областях, где пользователи могут вводить HTML.

Параметры

$data

Тип: string

Обязательный: Да

Описание: HTML-код, который необходимо фильтровать.

Возможные значения:

$allowed_html

Тип: array

Обязательный: Да

По умолчанию: array()

Описание: Массив разрешенных HTML-тегов и атрибутов.

Возможные значения:

p: class, id

strong:

em:

a: href, title

$allowed_protocols

Тип: array

Обязательный: Нет

По умолчанию: array(‘http’, ‘https’, ‘mailto’)

Описание: Массив разрешенных протоколов для ссылок.

Возможные значения:

http: 1

https: 1

mailto: 1

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

Тип: string

Описание: Отфильтрованный HTML-код.

Возможные значения:

• Строка с разрешенными HTML-тегами и атрибутами

• Пустая строка если все теги удалены

• Исходная строка если не было изменений

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

Простой пример фильтрации HTML-кода.

				
					$filtered = wp_kses('<p>Hello, <strong>world</strong>!</p>', array('p' => array(), 'strong' => array()));
// $filtered будет '<p>Hello, <strong>world</strong>!</p>'
				
			

Позволяет только теги

и

Фильтрация ссылки с разрешенными атрибутами.

				
					$allowed_html = array('a' => array('href' => array(), 'title' => array()));
$filtered = wp_kses('<a href="http://example.com" title="Example" target="_blank" rel="noopener">Link</a>', $allowed_html);
// $filtered будет '<a href="http://example.com" target="_blank" rel="noopener">Link</a>'
				
			

Удаляет атрибут title, если он не разрешен

Фильтрация потенциально опасного кода.

				
					$unsafe_input = '<script>alert("XSS");</script>';
$filtered = wp_kses($unsafe_input, array());
// $filtered будет пустой строкой
				
			

Все теги были удалены

Фильтрация пользовательского ввода в плагине.

				
					$content = wp_kses($user_input, array('p' => array(), 'a' => array('href' => array())));
// $content будет содержать только безопасные теги
				
			

Допускает только теги

и ссылки

Фильтрация комментариев пользователей.

				
					$user_comment = '<p>User comment <script>alert(1);</script></p>';
$filtered_comment = wp_kses($user_comment, array('p' => array()));
// $filtered_comment будет '<p>User comment </p>'
				
			

Удаляет скрипты и оставляет только

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

Валидация входных данных: Функция проверяет входные параметры на корректность.

Санитизация: Входные данные очищаются, чтобы предотвратить атаки.

Рекомендации: Используйте wp_kses() для всех пользовательских вводов, где необходимо сохранить HTML.

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

Фильтрует HTML-код как в постах.

Фильтрует данные, позволяя только безопасные HTML-теги.

— Хуки

Фильтрует массив разрешенных HTML-тегов и атрибутов.

— Примечания

– Ограничения

Некоторые теги могут быть удалены в зависимости от настроек безопасности.

– Частые проблемы

  • Проблемы при недостаточном разрешении тегов для нужного HTML.
  • Некорректный вывод, если не заданы необходимые атрибуты.

Оставить комментарий

Нужна помощь с WordPress WooCommerce плагинами темой оптимизацией ?

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
5900 ₽
Мега меню
Премиальный шаблон для создания сайта компании или интернет магазина с высокой конверсией на базе WordPress и WooCommerce, раскрывающий всю мощь плагина Elementor, как лучшего визуального редактора!

Поможем вывести Ваш бизнес на новый уровень!

Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил

Добро пожаловать!

Авторизуйтесь, чтобы продолжить

или

Забыли пароль? Восстановить

* Если аккунта у Вас еще нет, то он будет создан автоматически.

* Отправляя данные, вы соглашаетесь с политикой конфиденциальности.

Давайте составим техническое задание!
100% без риска
Нет обязательств по найму
Бесплатная оценка стоимости
[wplb_ai_chat assistant_id="asst_xfxjSwOE5CPN7FE83VGy09LZ"]