如何在成功提交表单时推送dataLayer事件?(使用Ninja Forms WP Plugin)



我想使用Google标签管理器跟踪此页面上成功的表单提交,为此,我需要在用户提交表单时触发一个自定义JavaScript事件。

<script>dataLayer.push({'event':'formSubmitted'});</script>

我使用的插件是Ninja Forms,从我可以看到它使用PHP或AJAX来处理表单。

我最好的猜测是我需要添加我的dataLayer。push事件在某个地方的SuccessMessage.php文件在ninja-formsincludesactions(你可以下载插件,看看里面),但我不确定在哪里或没有。

或者不是

谢谢

可以更改成功消息的HTML吗?如果是这样,我建议把你的JavaScript片段放在那里。

如果不行,可以在jQuery的front-end.js文件中添加。ajax Post的成功函数:

   jQuery.ajax({
                url: nfFrontEnd.adminAjax,
                type: "POST",
                data: l,
                cache: !1,
                success: function(t, i, n) {
                    try {
                        dataLayer.push({'event':'formSubmitted'}); //<- YOUR CODE HERE
                        var r = jQuery.parseJSON(t);
                            nfRadio.channel("forms").trigger("submit:response", r, i, n, e.get("id")),
                            nfRadio.channel("form-" + e.get("id")).trigger("submit:response", r, i, n)
                        } catch (o) {
                            console.log("Parse Error")
                        }
                    },
                    error: function(e, t, i) {
                        console.log("ERRORS: " + t),
                        nfRadio.channel("forms").trigger("submit:response", "error", t, e, i)
                    }
                })
nfRadio.channel("forms").on('submit:response', function(e) {
       console.log('submit');
       dataLayer.push({'event': 'test'});
});

最新更新