Как удалить ссылки из комментариев

👍 Научим создавать сайты на WordPress бесплатно за 19 уроков. Подробнее →

Смотрю, сейчас на многих сайтах авторы ресурсов вообще запрещают использование ссылок комментариях. Видимо спамеры настолько дискредитировали само понятие ссылок, что легче просто запретить их использование, нежели чем разбираться, является ли ссылка личным блогом, без корысти ли написан комментарий, или же все-таки попадание ссылки в индексирование является самоцелью. Ну что ж, если вы решили избавиться от ссылок в комментариях, то это легко можно сделать, модифицировав вашу тему.

Открываем файл 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);

Прощайте, спамеры!

Создай свой первый сайт на WordPress

tiaurus

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

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

  1. knopkin

    А как не избавится от ссылок, а сделать их ввиде слова «ссылка». А то бывают вставляют километровые ссылки, и они смотрятся некрасиво.

    Ответить
    1. Вы, наверное, не поняли смысла поста. Он говорит о том, чтобы вообще запретить автоматический перевод текста ссылки в ссылку — для защиты от спама.

      Ответить
  2. dsfdfsdf

    А как избавится от ссылок ‘comment_author_url’ ?
    пробовал по аналогии:
    function plc_comment_hide( $comment_to_display ) {
    return »;
    }
    add_filter(‘comment_author_url’, ‘plc_comment_hide’, », 1);
    Но не помогло

    Ответить