Эта функция позволяет отфильтровать контент и оставить там только те HTML теги и их атрибуты, которые вы хотите.
wp_kses ( $content, $html_tags, $protocols ) ; |
- $content
- (строка)(обязательно) сюда помещается контент, который хотите отфильтровать.
- $html_tags
- (массив)(обязательно) массив с перечислением разрешенных тегов HTML и их атрибутов.
array( 'a' => array( 'href' => array(), 'title' => array() ), 'br' => array(), 'em' => array(), 'strong' => array(), 'p' => array(), 'h2' => array(), 'img' => array( 'alt' => array(), 'src' => array() ) )
- $protocols
- (массив)(необязательно) здесь перечисляются разрешаемые протоколы.
Например по умолчанию разрешены следующие протоколы: http, https, ftp, mailto, news, irc, gopher, nntp, feed и telnet.
Возвращает отфильтрованный текст
.
В качестве примера скину код, в котором отфильтровывается контент, выводимый при помощи функции get_the_content (). В данном примере не было возможности использовать функцию the_content (), поэтому использовали get_the_content () совместно с фильтром, который вшит в функцию the_content ().
$html_tags = array( 'a' => array( 'href' => array(), 'title' => array() ), 'br' => array(), 'em' => array(), 'strong' => array(), 'p' => array(), 'h2' => array(), 'img' => array( 'alt' => array(), 'src' => array() ) ); echo wp_kses(apply_filters( 'the_content', get_the_content() ), $html_tags); |
Источник: misha.blog