Функция allowed_tags()
в WordPress возвращает строку, содержащую допустимые HTML-теги и их атрибуты, закодированные в формате HTML. Это может быть полезно, когда нужно показать пользователям, какие HTML-теги и атрибуты разрешены в полях ввода, например, в комментариях или в плагинах, которые очищают данные с помощью wp_kses()
и фильтров по умолчанию или групп тегов из глобальной переменной $allowedtags
.
allowed_tags();
Возвращаемое значение
Функция возвращает строку, представляющую допустимые HTML-теги в кодированном HTML-формате.
Пример 1: Получение разрешённых тегов и атрибутов
Для вывода всех разрешённых HTML-тегов и атрибутов можно использовать следующую конструкцию:
// Выводим все допустимые HTML-теги и атрибуты
echo allowed_tags();
Результат
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
Этот код выведет строку, содержащую все разрешённые теги и атрибуты, которые могут быть использованы в вашем сайте.
Пример 2: Фильтрация пользовательского ввода
Если вам нужно разрешить только определённые HTML-теги в пользовательском вводе, вы можете использовать функцию wp_kses()
вместе с allowed_tags()
:
// Пользовательский ввод с потенциально опасным HTML
$user_input = '<p>Привет, <a href="http://example.com" onclick="alert(\'XSS\')">мир</a>!</p>';
// Получаем разрешённые теги
$allowed_tags = allowed_tags();
// Фильтруем пользовательский ввод, разрешая только безопасные теги
$safe_content = wp_kses($user_input, $allowed_tags);
// Выводим отфильтрованный контент
echo $safe_content;
Результат:
<p>Привет, <a href="http://example.com">мир</a>!</p>
В этом примере атрибут onclick
был удалён из тега <a>
, так как он не является разрешённым.
Примечания
- Функция
allowed_tags()
использует глобальную переменную$allowedtags
, в которой хранятся все допустимые HTML-теги и атрибуты. - Эта функция полезна для отображения списка поддерживаемых тегов и атрибутов в интерфейсе вашего плагина или темы, а также для улучшения безопасности пользовательского ввода.
Заключение
Функция allowed_tags()
является полезным инструментом для обеспечения безопасности и контроля над разрешёнными HTML-тегами в WordPress. Она позволяет разработчикам легко узнать, какие теги и атрибуты можно использовать в пользовательском вводе, и эффективно управлять безопасностью контента на сайте. Использование этой функции в комбинации с wp_kses()
помогает защищать ваш сайт от потенциально вредоносного HTML-кода.