Подключение Google ReCapcha в PS 1.7 без модуля

Такая же ситуация, даже после добавления вашего кода. Надпись о капче "Отметьте галочкой, что Вы не робот, пожалуйста"
не исчезает.
Тема warehouse, преста 17.2.4,
Аналогично. Та же тема, та же Преста.
 
https://www.nulled.cc/pages/forum-rules/ П.2.15
У кого косяк с сообщением, делаем следующее:
Из пункта номер четыре (4:(
Код:
parent::initContent();
      
        $this->setTemplate('contact');
        function SiteVerify($url){
                $curl = curl_init();
                curl_setopt($curl, CURLOPT_URL, $url);
                curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
                $curlData = curl_exec($curl);
                curl_close($curl);
                return $curlData;
            }

            $recaptcha = Tools::getValue('g-recaptcha-response');

            if(!empty($recaptcha)){
                $google_url="https://www.google.com/recaptcha/api/siteverify";
                $secret='Ваш Секретный ключ с сайта капчи (который справа)';
                $ip=$_SERVER['REMOTE_ADDR'];
                $url=$google_url."?secret=".$secret."&response=".$recaptcha."&remoteip=".$ip;
                $res=SiteVerify($url);
                $res= json_decode($res, true);
        
                if(!$res['success']){
                  exit();
                }
            }
            else{
              $this->errors[] = Tools::displayError('Отметьте галочкой, что Вы не робот, пожалуйста');
            }
убираем (стираем или коментируем)
Код:
else{
              $this->errors[] = Tools::displayError('Отметьте галочкой, что Вы не робот, пожалуйста');
            }

В последнем пункте, где добавляли код:
Код:
if (Tools::isSubmit('submitMessage')) {
          
            if (($gcaptcha = (int)(Tools::getValue('g-recaptcha-response'))) == 0) {
                        $this->errors[] = $this->trans('Please complete reCaptcha', array(), 'Admin.Login.Notification');
                        }
          
            else {$this->sendMessage();}

Дописываем еще одну строку, после чего он будет выглядеть так:
Код:
if (Tools::isSubmit('submitMessage')) {
          
            if (($gcaptcha = (int)(Tools::getValue('g-recaptcha-response'))) == 0) {
                        $this->errors[] = $this->trans('Please complete reCaptcha', array(), 'Admin.Login.Notification');
                        }
            echo '<div class="alert alert-danger">Отметьте галочкой, что Вы не робот, пожалуйста</div>';
            else {$this->sendMessage();}

У кого получилось, ставим лайки))
 
У кого получилось, ставим лайки))
После добавления строчки с echo (последний пункт в сообщении выше) контактная форма вообще пропала.
UPD. Сейчас убрал изменения, контактная форма почему-то перестала пропускать письма. Хотя 16 числа слали что-то (спам), а с тех пор я ничего не ковырял. Этого ещё не хватало...
 
Последнее редактирование:
После добавления строчки с echo (последний пункт в сообщении выше) контактная форма вообще пропала.
UPD. Сейчас убрал изменения, контактная форма почему-то перестала пропускать письма. Хотя 16 числа слали что-то (спам), а с тех пор я ничего не ковырял. Этого ещё не хватало...

Попробуй вернуть родной ContactController.php и установить эту капчу Для просмотра ссылки Войди или Зарегистрируйся у меня вроде на одном сайте пропал спам.
 
Попробуй вернуть родной ContactController.php и установить эту капчу Для просмотра ссылки Войди или Зарегистрируйся у меня вроде на одном сайте пропал спам.
Спасибо, так гораздо лучше! Странно, что до сих пор сам на этот модуль наткнулся. С ним два неудобства, правда, возникло, но маленькие: поменялся язык в форме (сам справлюсь), и ещё когда сообщение проходит, он говорит, мол, сообщение отправлено, а когда не ставишь галочку на рекапче, просто обновляется страница. Но я готов с этим жить, если исправления не придумаем.
 
Спасибо, так гораздо лучше! Странно, что до сих пор сам на этот модуль наткнулся. С ним два неудобства, правда, возникло, но маленькие: поменялся язык в форме (сам справлюсь), и ещё когда сообщение проходит, он говорит, мол, сообщение отправлено, а когда не ставишь галочку на рекапче, просто обновляется страница. Но я готов с этим жить, если исправления не придумаем.

Как и многие модули ручками придется язык править, у него своя страница контактов, и язык правится в модуле
 
и язык правится в модуле
Кнопка "Прикрепить файл", кстати, не переводится из админки (соответствующее поле есть, но на него модуль не реагирует), пришлось при помощи CSS замену делать. А ещё форма скукожилась от модуля, раскукожил при помощи того же CSS, потом решил проверить в IE 11. Выглядит так:
2n89441.jpg

Без моего кода, впрочем, примерно то же самое. Самое печальное, что ЦА сайта - всякие госслужащие в возрасте с низкой компьютерной грамотностью, которые с того же IE и сидят.
 
Действительно, первая не ставится. Вторая ставится и настраивается, но у меня лично такая проблема: курсор при наведении на слайдер превращается в стрелочку, которая показывает влево и вправо, и сдвинуть слайдер нельзя. Также такая капча не работает с андроид-смартфонов, в отличие от гугловской, что тоже плохо. Поэтому всё ещё надеюсь на то, что какая-нибудь добрая душа со свободным временем сделает туториал по ручной установке на 1.7. Это надо не только мне, а всем таким же аматорам, кто начнёт делать сайт на этой же версии Престы в будущем.

Block worked :) but slide not working. Would be great way to avoid spam. Any fix?

pasted to contact form module before button

</section>

{include file="../../../../../../../modules/slidecaptcha/views/templates/front/slidecaptcha.tpl"}

<footer class="form-footer">


<input class="btn btn-primary" type="submit" name="submitMessage" value="{l s='Send' d='Shop.Theme.Actions'}">

</footer>



</form>
 

Вложения

  • slide.png
    slide.png
    3,8 KB · Просмотры: 6
Block worked :) but slide not working. Would be great way to avoid spam. Any fix?
I changed everything back to default and used this module nebikoff suggested earlier since no fix worked for me (had the same issue that you have right now w/ this 'SlideCaptcha') :
Попробуй вернуть родной ContactController.php и установить эту капчу Для просмотра ссылки Войди или Зарегистрируйся у меня вроде на одном сайте пропал спам.
 
fixed, spam stopped:) Solution for official reCaptcha. Working on 1.7.3 official and custom theme

1) Setup your Google reCAPTCHA Account @ Для просмотра ссылки Войди или Зарегистрируйся

2) Download attached file below and install. (You must have official contactform module installed and disabled)

3) Configure your EICAPTCHA Module and enter your public and secret keys.

Enjoy:)
 

Вложения

  • eicaptcha.zip
    60,2 KB · Просмотры: 28
Назад
Сверху