Как отключить HTML в комментариях

Что нужно сделать, чтобы запретить HTML-разметку в комментариях. Эта разметка является потенциально опасной для внедрения вредоносного кода, поэтому некоторые блоггеры отключают ее.

Иногда бывает полезно полностью отключить использование разметки HTML в комментариях. Для чего? Например, для корректного отображения кода, или для того, чтобы раз и навсегда запретить спамерам использовать ваши комментарии как площадку для раскрутки своих ресурсов. Сделать это можно с помощью небольшого хака.

Откройте файл functions.php и добавьте в него такой код:

function plc_comment_post( $incoming_comment ) {
$incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
$incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );
return( $incoming_comment );
}

function plc_comment_display( $comment_to_display ) {
$comment_to_display = str_replace( ''', "'", $comment_to_display );
return $comment_to_display;
}

add_filter('preprocess_comment', 'plc_comment_post', '', 1);
add_filter('comment_text', 'plc_comment_display', '', 1);
add_filter('comment_text_rss', 'plc_comment_display', '', 1);
add_filter('comment_excerpt', 'plc_comment_display', '', 1);

Этот код удалит всю HTML-разметку из текстов комментариев в постах и в RSS. Удаление происходит в момент записи, так что в базу данных текст будет записан уже без HTML-символов.

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

Оцените автора
Добавить комментарий