X
  • Дизайн та розробка сайту
  • Дизайн і створення сайтів. Розробка тем для WordPress. Створення Landing Page.
  • office@gnatkovsky.com.ua
  • @vgnat
  • Написати мені
Замовити послугу

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

Приклад
  • 2024-05-27
  • 4379 переглядів

  • Дизайн та розробка сайту

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

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

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

Недавно на моем сайте обострились спам боты. Несмотря на наличие плагина 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 символов.

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

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

Якщо Вам була корисна моя праця, можете фінансово підтримати сайт або відключити блокувальник реклами, що займе 2 хвилини :)

Хочу підтримати фінансово Хочу відключити блокувальник

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

Deprecated: Функція WP_Query викликана з аргументом, який вважається застарілим з версії 3.1.0! Вираз caller_get_posts застарілий. Використовуйте ignore_sticky_posts. in /var/www/vhosts/gnatkovsky.com.ua/gnatkovsky.com.ua/public/wp-includes/functions.php on line 6078