регистрация reCAPTCHA

Боты и всяческие Хрумеры являются конечной точкой эволюции человечества, к сожалению, эта точка вызывает радость у единиц, у остальных же регистрирует праведное негодование, икоту и нервные колики. Блог Zegeberg бомбили и боты, и XRumer, с первыми я справился довольно быстро с помощью скрипта, с Хрумером пришлось бороться только с помощью reCAPTCHA V2. Ниже я расскажу, как интегрировать рекапчу на Joomla 3, в том числе, поведаю, как поставить её на JComments.

секретный и публичный ключи

Процедура первая – регистрация и ключ

Для начала надо зарегистрировать сайты на https://www.google.com/recaptcha/intro/android.html, для чего переходим на страницу, ищем справа вверху синее окошко «Получить reCAPTCHA» и зеленеем от ожидания.

Ниже в окне «Регистрация сайтов» выбираем reCAPTCHA V2, указываем домены, на которых хотим её использовать и принимаем пользовательское соглашение.

После регистрации вы получаете два ключа – публичный и секретный.

Интеграция reCAPTCHA на joomla

Ключи на руках – счастье в кармане, переходим в админку Joomla. Для начала идём по пути наименьшего сопротивления:

Система – Общие настройки – Настройки сайта

Ищем пункт «CAPTCHA (по умолчанию)» и ставим

CAPTCHA – reCAPTCHA

С версии Joomla 3.8.6 V1 нет, если движок моложе, то выбираем V2 вручную.

Теперь идём в компоненты – плагины, ищем:

CAPTCHA - reCAPTCHA

И включаем его безо всяких настроек и перестроек, указав только два полученных от google ключа.

замена файла tpl_form.php

Теперь на странице контактов при отправке письма будет появляться гугловская капча…. Дело решено? Отнюдь, так как спам на 99% идёт через компонент JComments, которому чихать на системные настройки joomla.

reCAPTCHA V2 в JComments

По умолчанию в JComments стоит буквенная капча, которая ломается Хрумером, как консервная банка с тушёнкой в руках голодного туриста. В настройках компонента нет возможности переключиться на reCAPTCHA. Что делать, как защитить сайт от спама в комментариях и найти в мире красоту и гармонию?

замены файла jcomments.ajax.php

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

components\com_jcomments\tpl\default\tpl_form.php

components\com_jcomments\jcomments.ajax.php

Ниже я предлагаю готовые файлы tpl_form.php и jcomments.ajax.php, просто замените старые на новые и на вашей улице тоже перевернётся грузовик с тульскими пряниками. Код замены универсальный, подходит для всей линейки joomla 3 и не зависит от цифр публичного и секретного ключа. Фома-неверующий может сделать бекап, но файлы взяты с этого блога, они рабочие и не нуждаются в корректировке.

Вот архив rar, в котором две изменённых файла JComments.

Комментарии   

+2 #9 Артур 03.09.2018 17:31
Автору дай бог здоровья! Все четко по гайду заработало)
Цитировать
0 #8 OlegK 10.07.2018 16:55
Можно скопировать дефолтный шаблон в свое пространство имен, и не боятся лишний раз обновления.
components\com_jcomments\tpl\my_template/t\tpl_form.php
Спсб за работу - мне тоже помогло.
Цитировать
+2 #7 Олег 10.07.2018 12:11
Шаблон в jcomments можно переопределить, скопировав в туже папку и переименовав.
components\com_jcomments\tpl\t\tpl_form.php
Цитировать
0 #6 Игорь Дорогокупец 09.07.2018 15:22
Цитирую Ольга:
Цитирую Игорь Дорогокупец:
Цитирую Ольга:
Здравствуйте! пытаюсь установить все по вашему алгоритму, но рекапча таки не отобразилась, и родная при этом пропала. Сайт на джумла 2.5. Этот способ только для джумла 3 подходит? или в чем еще может быть проблема?

Не будет на 2,5 работать этот вариант, в более старых версиях Joomla другой код, поэтому и правка другая нужна. По сути, смысл остаётся тот же, но изменения нужны другие…. Я вообще не понимаю проблемы, почему не обновиться нормально на 3,8? С тройки идёт мобильно адаптированная версия, да и других плюшек много, 2,5 уже морально и технически устарела.

Я вот тоже не понмаю, почему до сих пор сайт на 2.5. Но, почитав, как обновить ее до 3х, поняла, что мне проще остаться на 2.5.

Ничего там сложного, это с 1,5 геморрой, а с 2,5 на 3 можно за час переехать.
Цитировать
+1 #5 Ольга 09.07.2018 15:18
Цитирую Игорь Дорогокупец:
Цитирую Ольга:
Здравствуйте! пытаюсь установить все по вашему алгоритму, но рекапча таки не отобразилась, и родная при этом пропала. Сайт на джумла 2.5. Этот способ только для джумла 3 подходит? или в чем еще может быть проблема?

Не будет на 2,5 работать этот вариант, в более старых версиях Joomla другой код, поэтому и правка другая нужна. По сути, смысл остаётся тот же, но изменения нужны другие…. Я вообще не понимаю проблемы, почему не обновиться нормально на 3,8? С тройки идёт мобильно адаптированная версия, да и других плюшек много, 2,5 уже морально и технически устарела.

Я вот тоже не понмаю, почему до сих пор сайт на 2.5. Но, почитав, как обновить ее до 3х, поняла, что мне проще остаться на 2.5.
Цитировать
+1 #4 Игорь Дорогокупец 09.07.2018 10:21
Цитирую Ольга:
Здравствуйте! пытаюсь установить все по вашему алгоритму, но рекапча таки не отобразилась, и родная при этом пропала. Сайт на джумла 2.5. Этот способ только для джумла 3 подходит? или в чем еще может быть проблема?

Не будет на 2,5 работать этот вариант, в более старых версиях Joomla другой код, поэтому и правка другая нужна. По сути, смысл остаётся тот же, но изменения нужны другие…. Я вообще не понимаю проблемы, почему не обновиться нормально на 3,8? С тройки идёт мобильно адаптированная версия, да и других плюшек много, 2,5 уже морально и технически устарела.
Цитировать
0 #3 Super User 29.06.2018 17:54
Цитирую Ольга:
Здравствуйте! пытаюсь установить все по вашему алгоритму, но рекапча таки не отобразилась, и родная при этом пропала. Сайт на джумла 2.5. Этот способ только для джумла 3 подходит? или в чем еще может быть проблема?

Точно не скажу, ставил на joomla 3.2 и joomla 3.8 не было проблем, про 2,5 не скажу.
Цитировать
0 #2 Ольга 27.06.2018 11:35
Здравствуйте! пытаюсь установить все по вашему алгоритму, но рекапча таки не отобразилась, и родная при этом пропала. Сайт на джумла 2.5. Этот способ только для джумла 3 подходит? или в чем еще может быть проблема?
Цитировать
0 #1 Ирина 06.06.2018 18:53
Спасибо!
Цитировать

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