• Здравствуйте, форумчане.

    Столкнулся с проблемой дублирования или наоборот ошибки при попытке отправки форм на сайте, при установленном счетчике Primegate.

    Происходит конфликт конкретно двух решений и код счетчика самого сервиса primegate провоцирует повторный клик по кнопке отправить в момент отправки(при этом дублирование++ отправки, если поля заполнены корректно), а пользователю при этом выдается сообщение, что форма не отправлена, либо на секунду — отправка успешна, а потом — форма не отправлена.

    Перелопатил много информации, chat gpt, привлеченные специалисты. Удалось понять, в каком месте скрипта primegate происходит провокация на клик,

    Сам счетчик выше подключается аж с помощью 3 разных скриптов, где основной для размещения в header:

        <script>
                (function () {
                    var pg = document.createElement('script');
                    var protocol = 'https:' == document.location.protocol ? 'https://' : 'http://';
                    pg.src = protocol + 'js.primegate.ru/primegate.min.js'; pg.setAttribute('async', 'true');
                    document.documentElement.getElementsByTagName('body')[0].appendChild(pg);
                    PrimeGate = {}; window.pg = []; components = ['init', 'track', 'identify'];
                    for (var i in components) {
                        PrimeGate[components[i]] = (function(component) {
                            return function () {
                                window.pg.push(component, [].slice.call(arguments, 0));
                      }
                    }(components[i]));
                    }
                })();
                PrimeGate.init(АЙДИКЛИЕНТА);
    	
        </script>

    Этот в свою очередь вызывает — primegate.min.js,
    который в свою очередь вызывает еще counter.js и только потом уже вызывается сам счетчик, который и провоцирует двойной клик и ошибку.

    Тех.поддержка уверенно посылает на йух уходить с wp или платить баснословные 100к за какое-то абонентское обслуживание. Проблему подтверждают интеграторы самого primegate и другие пользователи — клик .

    Прошу бывалых дать направление, но желательно не туда, куда отправила тех.поддержка.

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Модератор Yui

    (@fierevere)

    永子

    не знаю что с primegate, но автор CF7 хорошо отвечает на форуме поддержки своего плагина, если отнестись к нему уважительно
    https://wordpress.org/support/plugin/contact-form-7

    1. Заменить плагины контактной формы/модального окна
    2. Внести доработки в CF7, чтобы исправить нежелательное поведение

    По 1-му пункту могу посоветовать использовать плагины для попап с конверсией. Там можно настроить блокировку повторной отправки. Например, вот этот.

    По 2-му предлагаю изучить хуки CF7. С их помощью можно отследить и запретить двойную отправку:

    https://wp-kama.ru/plugin/contact-form-7/sovety-haki-sekrety
    https://silvawebdesigns.com/how-to-prevent-multi-submit-on-contact-form-7/

    Автор rodrigesdmitriy

    (@rodrigesdmitriy)

    @Yui , спасибо за совет. Я попробую спросить в теме разработчика.

    @kword , спасибо за то, что приняли участие в обсуждении!

    1й вариант замены никак не возможен. А модальное окно выполнено кодом на библиотеке micromodal.

    2й вариант — по первой ссылке было перепробовано все, к сожалению без результатно, так как ответ от удаленно сервера primegate приходит с разной задержкой.

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

    Благодарю вас!

    Проблема не решена.
    Primegate не совместим с Contact form 7.

    Если у вас WP и формы на CF7 откажитесь от Primegate.

Просмотр 4 ответов — с 1 по 4 (всего 4)