Как удалить ненужное поле 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

Наоми Кэмпбелл

Очень многие недооценивают то, что у них есть, и переоценивают то, чего у них нет…

4 дня ago

Уолтер Дисней

Если вы можете это вообразить, - вы можете это сделать Уолтер Дисней  

5 дней ago

Теодор Рузвельт

Стоит только поверить, что вы можете – и вы уже на полпути к цели Теодор…

1 неделя ago

Надежная инфраструктура для бизнеса: VPS и выделенные серверы в Украине.

Успешный бизнес в 2025 году немыслим без стабильной ИТ-инфраструктуры. От корпоративного сайта до CRM-системы все…

1 неделя ago

WordPress как Headless CMS 🧠 | практично с REST API

WordPress годами был непревзойденным "монолитом": он отвечал и за удобную админ-панель, и за хранение данных,…

3 недели ago

Тандем Nginx + Apache 🤝 Как совместить скорость и гибкость

В мире веб-серверов часто говорят о противостоянии Nginx vs Apache. Но что, если бы я…

3 недели ago