I got a tracking code and opt-in/out iframe to implement from our digital marketing department. To make the opt-in/out iframe fit the styling of the site, I followed the documentation for implementing a custom opt-in/out form..
At first I was confused because the variable in the tracking script that I got is called _mtm and the documentation references _paq. I changed the code from the documentation to reference _mtm at first but that didn’t work (_mtm.push() function is not valid). Now that I keep the code just like in the documentation, I get an error with this line element.checked = !this.isUserOptedOut();. The isUserOptedOut() method does not exist on the this Object.
When clicking the checkbox I get another error saying There was an error setting cookiemtm_consent_removed. Please check domain and path.
I’m really confused on which variable I should use for the custom form (_paq or _mtm). Help on how to solve this would be much appreciated! Thanks
thanks a lot for clarifying the variables! I will check back with the digital marketing department to see if my implementation of the custom opt-out form works. I have a feeling though that there is a piece missing. Shouldn’t the opt-out form have a URL that the user action is reported to? Or is that taken care of by the main script that is on the page?
var _mtm = (window._mtm = window._mtm || []);
_mtm.push({ "mtm.startTime": new Date().getTime(), event: "mtm.Start" });
var d = document,
g = d.createElement("script"),
s = d.getElementsByTagName("script")[0];
g.async = true;
g.src = "https://analytics.site-domain.com/js/container_GHJDVJFZD.js";
s.parentNode.insertBefore(g, s);
</script>```
I found my mistake! If you check the codepen on line 21… the isUserOptedOut is being called outside of _paq.push. After moving it, I don’t get any of the error’s anymore that I described earlier.