Как разрешить пользователям публиковать анонимные комментарии в WordPress

Как разрешить пользователям публиковать анонимные комментарии в WordPress

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

Псевдоним: идеальное решение

Самый лучший способ разрешить анонимные комментарии в WordPress, снизив при этом объемы спама – подтолкнуть пользователей к применению псевдонимов или никнеймов вместо своих реальных имен.

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

Вы можете отметить это в своей политике комментирования и поместить специальную ссылку на нее над формой комментариев.

В то время как это будет идеальным (и рекомендуемым нами) решением, существуют и другие варианты, позволяющие реализовать анонимность. Однако стоит сразу сказать, что чем выше добавленная вами анонимность, тем больше спама вы будете получать.

Делаем поля ввода имени и почтового адреса необязательными

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

Для начала вам понадобится перейти в раздел Параметры – Обсуждение и снять галочку с поля «Автор комментария должен заполнить поля с именем и почтовым адресом». Теперь вам нужно сохранить изменения, и вы сможете принимать комментарии без имени и почтового адреса.

anonymous-comments

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

function wpb_alter_comment_form_fields($fields) {

// Modify Name Field and show that it's Optional 
$fields['author'] = '<p class="comment-form-author">' . '<label for="author">' . __( 'Name (Optional)' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>';

// Modify Email Field and show that it's Optional
$fields['email'] = '<p class="comment-form-email"><label for="email">' . __( 'Email (Optional)', 'twentythirteen' ) . '</label> ' .
      ( $req ? '<span class="required">*</span>' : '' ) .
      '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .
      '" size="30"' . $aria_req . ' /></p>'; 

// This line removes the website URL from comment form. 	  
	  $fields['url'] = '';

    return $fields;
}
add_filter('comment_form_default_fields', 'wpb_alter_comment_form_fields');

Данный код просто добавляет текст (Optional) рядом с полями имени и почтового адреса в форме комментирования. Также код позволяет удалить поле URL из формы. Если вы хотите оставить поле URL, то в таком случае удалите соответствующую строку из кода. Вот как будет выглядеть ваша форма комментирования после изменений:

name-email-optional

Как полностью удалить поля с именем и почтовым адресом из формы комментирования

Для тех пользователей, которые хотят удалить поля с именем и почтовым адресом из формы комментирования, ниже представлен фрагмент кода, позволяющий это сделать. Поместите данный код в файл functions.php вашей темы:

function wpb_alter_comment_form_fields($fields) {
    unset($fields['author']);
    unset($fields['email']);
    unset($fields['url']);
    return $fields;
}
add_filter('comment_form_default_fields', 'wpb_alter_comment_form_fields');

Если ваша форма комментирования отображает текст «Your email address will not be published» («Ваш почтовый адрес не будет опубликован»), то в таком случае вы можете скрыть его путем редактирования файла comments.php. Найдите тег <?php comment_form ?> и замените его следующим кодом:

<?php 
comment_form(array(
'comment_notes_before' => '<p class="comment-notes">' . __( 'No name or email address required.' ) . ( $req ? $required_text : '' ) . '</p>'
    ));
?>

Если вы не можете найти comment_form, то вы все еще можете скрыть данный текст путем добавления следующего CSS-кода в файл style.css вашей темы:

.comment-notes {
display:none;
}

Вот как будет выглядеть форма комментирования без полей с именем, почтовым адресом и URL:

noname-email-comment

Предостережение по поводу анонимных комментариев

Обратите внимание, что без полей с именем и почтовым адресом ваша форма комментариев будет привлекать большое количество спама. В то время как Akismet и Sucuri способны блокировать некоторые нежелательные IP, мы настоятельно рекомендуем вам поставить CAPTCHA-верификацию для предотвращения основной массы спама.

Источник: wpbeginner.com

Сохранено из oddstyle.ru

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

%d такие блоггеры, как: