Главная
Wordpress
Как установить максимальную длину комментария в WordPress без плагина
  • 419
  • 3
  • Рубрика: Wordpress

Как установить максимальную длину комментария в WordPress без плагина

Как установить максимальную длину комментария в WordPress без плагина

Доброго времени суток 🙂

В этой статье хочу затронуть вопрос о том как ограничить длину комментария в WordPress без плагина. То бишь задать его максимальную длину в количестве символов. Когда-то я уже писал подобную статью, но там задавалась, как раз наоборот, минимальная длина комментария, дабы уменьшить число комментариев с короткими ссылками или не несущие смысла. Речь идет о статье - Как установить минимальную длину комментария в WordPress без плагина. В этой статье, к ограничению по максимальному количеству, я также покажу новый способ и минимального ограничения. По сути будет новая функция 2 в 1.

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

add_filter( 'preprocess_comment', 'wpb_preprocess_comment' );
function wpb_preprocess_comment($comment) {
    if ( strlen( $comment['comment_content'] ) > 4000 ) {
        wp_die('Комментарий слишком длинный.');
    }
if ( strlen( $comment['comment_content'] ) < 20 ) {
        wp_die('Комментарий слишком короткий. Пожалуйста, напишите не менее 20 символов.');
    }
    return $comment;
}

Данный код нужно поместить в файл отвечающий за вывод пользовательских функций - functions.php. Если Вы работали с этим файлом и знаете как правильно в него добавлять код, то делайте это в удобном для Вас месте, если же Вы новичок и мало знакомы с PHP, то добавьте код в самый конец. Если там, в последней, именно в последней строке - есть закрывающий тег PHP - ?> то добавьте перед ним.

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

  • В 3 строке задаем максимальное количество символов, в нашем случаи - 4000.
  • В 5 строке текст, который увидит посетитель, если его комментарий превысит по количеству символов. В нашем случаи - Комментарий слишком длинный..
  • Ну и для ограничения по минимальному количеству символов, в 7 строке задаем значение - 20.
  • В 8 строке текст для комментатора, если его сообщение будет короче 20 символов - Комментарий слишком короткий. Пожалуйста, напишите не менее 20 символов.

Как видите сложного ничего нет. После добавления данного кода, вы избавите свой сайт от тех кто захочет наполнить его мусорными комментариями. Конечно же, Вы можете изменить ограничения - введя свои значения.

На этом все, спасибо за внимание. 🙂




Если Вам был полезным мой труд, можете поддержать сайт :)


Оцените статью
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
Проголосовало: 5, в среднем: 5 из 5

Опубликовано 3 комментария

  • Сергей
    Комментариев: 2

    Спасибо, очень актуальная проблема. Было бы неплохо если бы вы рассказали какой код добавить, чтоб в админке не вылазило предупреждение, что какого-то плагина нет. Такое бывает когда тема запилена разработчиками под определённые плагины. Например надо устанавливать плагин Contact Form 7, а я от него давно отказался и пользуюсь другим плагином. Я бы показал картинку как выглядит это оповещение в админке, но думаю вы поняли о чём я.

    • Виталий
      Комментариев: 427

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

  • Екатерина
    Комментариев: 1

    Спасибо огромное! Сегодня тоже сайт завалил спам бот - длинными комментариями. Я вообще ограничила до 2000 символов.

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

Заполните поля ниже. Ваш e-mail не будет опубликован. Обязательные поля помечены *

Уважаемые пользователи! При добавлении комментариев на сайт Вам следует соблюдать правила указанные под формой отправки комментариев.

Соблюдайте добавления комментариев

Это не спам *

Нажмите, чтобы добавить код в комментарий
X

Привет дорогой друг

У тебя установлено расширение AdBlock или подобное. Добавь мой сайт в белый список, и тем самым внесешь свой вклад в его развитие. Инструкция как отключить AdBlock Хочу такое же окошко