如何在MailChimp确认页面URL中包含URL参数

时间:2018-01-16 20:17:05

标签: mailchimp

我正在创建一个mailchimp注册表单,this documentation.我正在托管我自己的注册表单,所以我在这里指定了这个URL:

enter image description here

我想要包含一个动态网址参数,该参数会将表单中输入的电子邮件地址发送到我的感谢页面。

我尝试过格式shown here,我也尝试过使用合并代码,如下所示:

http://example.com/thankyou?email=*|EMAIL|*

或者,如果使用自定义表单或API,则采用完全不同的方式。

3 个答案:

答案 0 :(得分:0)

我已经与Mailchimp支持人员就此主题以及收到的答案进行了交谈:

  

这是不可能的,因为合并标记仅填充这些值   在Mailchimp广告系列和托管页面中。确认谢谢   页面是从注册表单重定向的,表单没有办法   捕获用于该合并标记的电子邮件地址。

因此,一种选择是在列表设计器中使用高级模式,并使用刷新meta标签注入表单:

<meta http-equiv="refresh" content="0;url=https://www.example.com?email=*|EMAIL|*">

答案 1 :(得分:0)

我意识到这是一个老问题,但是以防万一其他人正在寻找解决方案,我想我会分享。

我刚刚做了一些与您尝试做的事情类似的事情。对于我的用例,我试图添加到URL,以便可以显示唯一的确认页面结果。因此,我在表单操作中将URL参数附加到Mailchimp URL的末尾。然后,在确认页面中,我正在使用此脚本读取该URL参数并将其添加到重定向中。到目前为止,它的工作原理就像是一种魅力。

这是我的代码:

    <script>
        var formSubmit = getUrlParameter('formSubmit');

        function getUrlParameter(sParam) {
            var sPageURL = window.location.search.substring(1),
                sURLVariables = sPageURL.split('&'),
                sParameterName,
                i;

            for (i = 0; i < sURLVariables.length; i++) {
                sParameterName = sURLVariables[i].split('=');

                if (sParameterName[0] === sParam) {
                    return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);
                }
            }

        };
        
        var link = document.createElement('meta');
        link.setAttribute('http-equiv', 'refresh');
        link.content = '0;URL=https://puredesire.org/thank-you?formSubmit=' + formSubmit;
        document.getElementsByTagName('head')[0].appendChild(link);
        
    </script>

答案 2 :(得分:0)

为了避免在高级模式下创建所有公式,我在 html 视图中使用文本编辑器在 mailchimp 确认页面的正文中添加了重定向语句。它也能正常工作。