Вчера столкнулся с проблемой - комментатор на одном из блогов хотел вставить изображение в свой комментарий с помощью тега img, а у него никак не отображалось. Поэтому передо мной встал вопрос - как разрешить пользователям блога на WordPress вставлять свой html-код в комментариях?
На упомянутом блоге стандартная вордпрессовская система комментирования, и, насколько мне известно, она позволяет комментаторам использовать следующие html-теги <a href="" title=""> b> <strong> <i> <em> <blockquote cite=""> <cite> <code> <abbr title=""> <acronym title=""> <del datetime=""> <q cite=""> <strike> и вроде бы все. А для вывода изображений применяется html-тег <img src="">, которого нет в приведенном выше списке.
Как оказалось, проблема кроется в вордпрессовском файле wp-includes/kses.php, который можно отредактировать вручную и добавить в него нужные Вам html-теги.
Для этого найдите там такую часть кода (у меня он оказался где-то на 400-й строке):
$allowedtags = array(
'a' => array(
'href' => array (),
'title' => array ()),
'abbr' => array(
'title' => array ()),
………
и допишите в него свой код по следующему шаблону:
если html-тег может содержать какие-то дополнительные атрибуты:
'тег' => array(
'атрибут' => array(),
'атрибут' => array ()),
если html-тег используется без атрибутов или вы не хотите разрешать их использование:
'тег' => array(),
Пример. Мне нужно было разрешить использование тега img с атрибутами alt и title. В результате получился такой код:
$allowedtags = array(
'img' => array(
'src' => array(),
'alt' => array (),
'title' => array ()),
'a' => array(
'href' => array (),
'title' => array ()),
………
(Кстати, если Вы хотите запретить использование каких-либо html-тегов, то можно их удалить из этого списка)
Есть еще один способ разрешить использование дополнительных html-тегов, возможно даже и лучше предыдущего. Ведь если Вы измените вручную файл wp-includes/kses.php - Вам придется это делать каждый раз после обновления движка WordPress. А можно внести один раз изменения в файл functions.php, который находится в папке с Вашим шаблоном - и больше не возвращаться к проблеме. Также можно внести изменения в functions.php через редактор дизайна.
Например, для того чтобы позволить комментаторам блога добавлять свои изображения в комментариях, в файл functions.php следует добавить следующий код:
global $allowedtags;
$allowedtags_add = array (
'img' => array(
'src' => array(),
'alt' => array (),
'title' => array ()
),
);
$allowedtags = array_merge ($allowedtags, $allowedtags_add);
Перечень разрешенных html-тегов Вы можете расширять по своему усмотрению.
Be the first to comment on "Дополнительные разрешенные теги в комментариях WordPress"