Для защиты от спам-регистраций и спам-сообщений с сайтов рекомендуется использовать специализированную усиленный защитный виджет reCaptcha. Злоумышленники используют профессиональные инструменты для автоматического заполнения форм связи, обратных звонков, быстрых заказов и т.д. reCaptcha - это надежное средство защиты от Google, останавливающее спамеров.
Включение каптчи происходит в административной панели магазина в меню Настройка → Интеграция → - Настройка безопасности reCAPTCHA - Включить режим усиленной проверки от ботов.
Настройка
Настройка ключей безопасности вынесена в основные настройки в панели управления интернет-магазином. Можно использовать как общие, так и персональные ключи, получить которые можно на сайте www.google.com/recaptcha/
Шаблоны
В новые шаблоны версии PHPShop 5.2.6 новая каптча уже прописана. Для ручного изменения предыдущих версий шаблонов следует внести переменную @captcha@ (без пробела) в шаблоны:
- Регистрация пользователя:
/phpshop/templates/имя_шаблона/users/register.tpl
- Форма сообщения:
/phpshop/templates/имя_шаблона/forma/page_firma_list.tpl
- Форма отзыва:
/phpshop/templates/имя_шаблона/gbook/gbook_forma_otsiv.tpl
- Форма обратного звонка:
/phpshop/templates/имя_шаблона/modules/oneclick/templates/oneclick_forma.tpl
- В файл
/phpshop/templates/имя_шаблона/js/phpshop.js
добавить в самый конец файла код запуска каптчи:// reCAPTCHA if ($("#recaptcha_default").length || $("#recaptcha_returncall").length || $("#recaptcha_oneclick").length) { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.defer = true; ga.src = '//www.google.com/recaptcha/api.js?onload=recaptchaCreate&render=explicit'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); } recaptchaCreate = function() { if ($("#recaptcha_default").length) grecaptcha.render("recaptcha_default", {"sitekey": $("#recaptcha_default").attr('data-key'), "size": $("#recaptcha_default").attr('data-size')}); if ($("#recaptcha_returncall").length) grecaptcha.render("recaptcha_returncall", {"sitekey": $("#recaptcha_returncall").attr('data-key'), "size": $("#recaptcha_returncall").attr('data-size')}); if ($("#recaptcha_oneclick").length) grecaptcha.render("recaptcha_oneclick", {"sitekey": $("#recaptcha_oneclick").attr('data-key'), "size": $("#recaptcha_oneclick").attr('data-size')}); };
Модули
- Обратный звонок - внести переменную @ oneclick_captcha@ (без пробела) в шаблоны:
/phpshop/templates/имя_шаблона/modules/oneclick/templates/oneclick_forma.tpl
и/phpshop/templates/имя_шаблона/modules/oneclick/templates/oneclick_window_forma.tpl
- Быстрый заказ - внести переменную @ returncall_captcha@ (без пробела) в шаблоны:
/phpshop/templates/имя_шаблона/modules/returncall/templates/returncall_forma.tpl
и/phpshop/templates/имя_шаблона/modules/returncall/templates/returncall_window_forma.tpl