Как я добавила reCaptcha 2.0 Я не робот на свой WordPress сайт

reCaptcha-2/0-Я-не-роботИтак, как Вы помните, в предыдущей статье я рассказывала, что протестировала аж целых 3 плагина WordPress., так как очень хотела добавить современную проверку reCaptcha 2.0 Я не робот в форму для комментариев на своем сайте.

Но ни один из них у меня успешно не установился.

Поэтому захотелось найти причину, почему это не получается.

Автор плагина Better WordPress reCAPTCHA, который я тестировала первым, сообщал, что его программный продукт идеально подходит для шаблонов, где форма комментариев организована с помощью функции WordPress comment_form ().

А на странице, рассказывающей про эту функцию предлагали посмотреть пример, как она выглядит в популярном шаблоне Twentyten theme.

Я посмотрела этот пример и увидела, что функция просто вставлена в самом конце файла comments.php.

И решила попробовать это на своем шаблоне.

код новой формы комментариев

 

1

<?phpcomment_form();?>

 

В самый конец своего файла comments.php я добавила тег, запускающий функцию.

И, о, чудо! Теперь на моем тренировочном сайте появились целых две формы для комментариев: старая и новая, содержащая проверку «Я не робот» (при условии, что активирован плагин Better WordPress reCAPTCHA) .

старая и новая форма комментариев

Новая форма комментариев лучше старой!

Новая форма, построенная с помощью всего лишь одной строки, отлично работала и не пропускала комментарии, которые не преодолели reCaptcha 2.0.

Замечательно!

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

Стала разбираться, как это можно сделать.

Если Вы немного изучали HTML, хотя бы по бесплатному видео-курсу Евгения Попова (ссылку на курс можно найти у меня на странице Online сервисы), то понимаете, что любая форма имеет открывающий и закрывающий теги.

Проще всего открыть свой файл comments.php, нажать, когда он откроется, одновременно 2 клавиши Ctrl и F у себя на клавиатуре, и найти эти самые открывающий и закрывающий теги, набрав в окошечке для поиска слово form. Можно увеличить

удалить-код-старой-формы-комментариев

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

Этот фрагмент кода и нужно удалить. Так я и поступила.

На всякий случай сохранила удаленный кусок в файл на своем компьютере.

Старая форма для комментариев исчезла, но от нее остался еще заголовок (тег содержит form title).

заголовок-старой-формы-комментариев

От него тоже нужно избавиться.

Вот и все.

Так я заменила старую форму комментариев, написанную с помощью длинного многострочного кода, на новую современную, которая запускается с помощью всего лишь одной строки, вызывающей функцию WordPress comment_form ()..

Работает новая форма прекрасно. И проверку «Я не робот» проигнорировать не дает. К тому же она показывает замечательные подсказки, если какое-то из обязательных полей не заполнено.

Заполнить-обязательные-поля в форме комментариев

Хочу напомнить, что если Вы решили использовать плагин Better WordPress reCAPTCHA, то не забудьте на сервере хостинга повысить PHP для своего сайта. Должно быть не ниже 5.4, чтобы показывалась reCaptcha 2.0.Изменить-версию-PHP-на-сервереУ меня пока 5.4.

И не забудьте обновить свой движок WordPress, если Вы давно не делали этого, чтобы иметь возможность использовать его новые функции.

Плагин Google Captcha (reCAPTCHA) by BestWebSoft тоже заработал.

Следует отметить, что после того, как я заменила старую форму комментариев на новую, у меня успешно заработал и второй плагин Google Captcha (reCAPTCHA) by BestWebSoft.

В предыдущей статье я говорила, что он раньше не добавлял reCaptcha 2.0 в мою старую форму.

Но в его описании я тогда не нашла, что для его успешной работы тоже нужна именно новая форма, построенная с помощью функции comment_form ()..

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

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

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

неправильно-ввели-reCaptcha

Остается только пройти тест заново.

В отличие от плагина Better WordPress reCAPTCHA или плагина No CAPTCHA reCAPTCHA, где комментарий придется набирать заново в аналогичной ситуации.Пропустили-reCaptchaНо надо сказать,что Плагин No CAPTCHA reCAPTCHA, который успешно добавлял reCaptcha 2.0 даже в мою старую форму комментариев, на моем шаблоне так и не заработал.

Проверка в этом случае непреодолима.

Здесь, какая-то другая проблема. Пока не нашла в чем дело.

Но два плагина из трех с проверкой «Я не робот» у меня заработали!

Это победа!

Осталось только разобраться, как можно запустить эту проверку на сайте вообще без плагина. Необходимый программный код, который делает тест обязательным, я пока не сочинила. И не нашла, где такой код можно позаимствовать.

Будем искать!!!

Итоги.

Какой WordPress плагин с reCaptcha 2.0 я выбрала.

Я пока оставила плагин Better WordPress reCAPTCHA, который отлично сочетается с моей новой формой для комментариев, и имеет много дополнительных возможностей.

Это и интеграция с другими базовыми плагинами (Akismet и Contact Form 7), и возможность не показывать капчу для зарегистрированных пользователей.

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

Следует особенно подчеркнуть, что плагин работал у меня, даже когда он полноценно не работал (каламбур получился!).

Помните, я сначала поставила галочку в элементе интеграции с Akismet, чтобы не пропускать спам.

Теперь же, когда проверка появилась в форме комментариев и заработала правильно, я эту галочку удалила.

удалить-галочку-интеграции- с Akismet

Это означает, что все, кто решил оставить отзыв на моем блоге, обязательно должны пройти проверку «Я не робот».

Но папка Спам на моем сайте по-прежнему пуста.

Чего я и добивалась.

Но, если Вы нормальный живой человек, то всегда сможете преодолеть проверку и оставить отзыв.

Попробуйте! Протестируйте мою новую форму.

Жду Ваших комментариев!

Елена и tvoy-internet.ru

 

Понравилась статья? Поделиться с друзьями:
Комментарии: 9
  1. Алена

    Действительно, все гениальное просто! Зато как здорово получилось. Надо попробовать. Спасибо за пост. Предыдущий был немного замороченным, пока дочитала до конца в голове была каша. А здесь все понятно и доступно. Надо экспериментировать.)))

    Но капча — замороченная!)))

  2. Елена Молгачева

    Алена! Да, на начальном этапе было сложно разобраться с этой капчей.

    Особенно было обидно, когда у других получилось нормально установить проверку «Я не робот», а у меня — нет. И пришлось для начала поставить даже бутафорский вариант, когда прохождение теста было не обязательным.

    Но постепенно все становится на свои места, и приходит четкое понимание вопроса.

    Возможно, некоторым это и не понадобится.

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

    Но, когда мы сталкиваемся с трудностями, то это заставляет нас изучить тему более детально.

    Тем приятние, когда удается решить проблему и добиться успеха!

  3. Елена

    Кстати, только сейчас подумала об этом:

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

    Если без переключения на другую страницу сразу же всплывает подсказка, что поле нужно заполнить, то скорее всего — это современная форма для комментариев, созданная с помощью функции Вордпресс comment_form ().

  4. Валентин

    Хорошие плагины, сам пользовался одним из них на клиентских сайтах. Только был глюк с вордпрессом 4.3 — все плагины антиспама полетели, и комментарии невозможно было оставить. Но они оперативно все исправили, молодцы.

  5. Елена

    Валентин! Поэтому я и не хочу удалять базовый плагин Akismet для защиты от спама в комментариях.

    Лучше иметь 2 линии защиты на случай форс-мажора.

    Одиа отключилась — вторая останется.

  6. Виктор

    Без всяких лишних движений плагин L D W recapcha закрывает кнопку «отправить комментарий» (как у вас), и без прохождения каптчи коммент не отправишь — форма отравки появляется только после прохождения каптчи. Настроек нет, кроме ввода двух ключей, полученных при регистрации. Но если на одной странице стоят формы Contact Form 7 и включены стандартные комменты, то в каком-то одном месте работает

  7. Елена

    Виктор! Спасибо. Это интересное предложение.

    Но у Вас тоже новая форма для комментариев, построенная с помощью функции Вордпресс (как узнать, я рассказывала в комментариях к этой статье чуть выше — 3-й комментарий сверху)

    Поэтому надо еще проверить, будет ли предложенный Вами плагин работать со старыми формами…

  8. Дмитрий

    Здравствуйте. А если у меня в форме комментариев стоит точно такая строка, на которую Вы предложили заменить стандартную? У меня ни один из плагинов не работает. Т.е. капча есть, но при проверки постоянно выдает ошибку, никто не может оставить комментарий. Буду рад за помощь!

  9. Елена Молгачева

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

    Понятно, что в каждом конкретном случае возникают какие-то свои дополнительные трудности.

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

    Если у меня что-то не получается, я иногда откладываю решение проблемы до лучших времен. Со временем проблема решается (подсознание не прекращает работу над ней).

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

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

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: