Как удалить ненужное поле Website в форме комментирования

Все, кто является собственником блога на движке ВордПресс, знают, что спам в комментариях – это очень большое зло. В основном целью спамеров является добавление в комментарии ссылки на свой спамный сайт (а еще хуже – запакованный вирусами). Т.е., можно сделать вывод, что они преследуют своими комментариями две цели: во-первых, получать переходы по ссылкам на свой сайт, а во-вторых, увеличить цитируемость своего сайта на просторах Интернета, чтобы повысить рейтинг.

Все крупные поисковики уже давно научились не обращать внимания на такие ссылки и рейтинг этим сайтам не повышается. Даже наоборот, такие спамные сайты могут попасть под бан. Хуже дела обстоят с теми сайтами, на которых размещаются ссылки, ведущие на спамные сайты. Даже если к таким ссылкам добавляется атрибут rel="nofollow".

По умолчанию, в блоге на движке ВордПресс в форме комментирования есть такие поля: Имя, E-mail, Сайт (Website), Комментарий. Если у вас на сайте используется дефолтная форма комментариев WordPress, будьте готовы к большому потоку спама (в котором, как мы уже рассмотрели, особое внимание уделяется внешним ссылкам). Да, вы можете включить премодерацию комментариев и потом вручную одобрять «нормальные» комментарии, но это отнимает очень много сил и времени. Да, вы можете поставить отличный плагин по борьбе со спамом Akismet, но вам все равно придется вручную очищать папку со спамом, а то и перепроверять, не попал ли случайно нормальный коммент в спам. А полное отключение комментирования ваших записей в блоге – это вообще не вариант.

В этой статье мы рассмотрим один простой способ усложнения жизни спамерам – удаления поля Сайт (Website) из формы комментирования для сайта на CMS WordPress. Это не гарантирует прекращения потока спама, но позволит значительно его уменьшить.

 

Для удаления из формы комментариев поля для URL сайта комментирующего достаточно будет добавить в файл functions.php активной темы следующий код:

 

add_filter('comment_form_default_fields', 'remove_url_from_comments');
function remove_url_from_comments ( $fields ) {
  if ( isset($fields['url'] ))
  unset ( $fields['url'] );
  return $fields;
}

 

Иногда данного кода будет недостаточно, например, если в вашей теме используется кастомный шаблон комментариев — comments.php. Тогда вам нужно будет еще удалить HTML и PHP строки для вывода отдельного поля под ссылку на внешний сайт. Примерный код, который нужно будет удалить, выглядит так:

 

<p class="comment-form-url">
  <label for="url"><?php __('Website'); ?></label>
  <input id="url" name="url" type="text" value="<?php echo $comment_author_url; ?>" size="30" />
</p>

 

 

После этого у злоумышленников будет меньше шансов добавить спамные ссылки к комментариям на вашем сайте.

 

Recent Posts

Распространенные мифы и заблуждения о пиве: восстанавливаем справедливость

Пиво – один из самых популярных напитков, который наряду с чаем и кофе известен во…

7 часов ago

Уроки JavaScript — Краткие функции на замену большому объемному коду

Довольно часто у программистов возникает соблазн написать какую-нибудь обширную функцию, которая должна решать определенную задачу.…

6 дней ago

Зачем и как просыпаться раньше

Дискуссии вокруг этой темы вас, вероятно, уже утомили. Но я в данной статье постараюсь показать…

7 дней ago

Уроки JavaScript — Шпаргалка для разработчиков по работе с консолью в браузере

Консоль браузера (также известная как консоль JavaScript или веб-консоль) — это мощный инструмент для разработчиков,…

1 неделя ago

Бернард Шоу

Никогда не указывайте на ошибки, если не знаете, как их исправить Джордж Бернард Шоу  

1 неделя ago

Уильям Джеймс

Когда необходимо сделать выбор, а вы его не делаете, — это тоже выбор Уильям Джеймс…

1 неделя ago