使用 JS 或 JQ 覆盖引用 Google 分析

Override referrer Google Analytics with JS or JQ

我正在尝试覆盖 Google Analytics 的引荐来源网址,而不触及主要的 Google 分析脚本或配置。问题是它不工作。根据我的脚本,Google 分析采用了 document.referer 变量,它确实更改了 document.referer 变量,但仍然无法正常工作。

<script>
    $(document).ready(function(e) { 
        function change_referrer() {
            Object.defineProperty(document, "referrer", {get : function(){
                var referers = [
                    'twitter.com',
                    'google.com',
                    'facebook.com',
                    'instagram.com'
                ];
                var the_referer = sessionStorage.getItem("the_referer");
                if(!the_referer) {
                    var the_referer = referers.randomElement();
                    sessionStorage.setItem("the_referer", the_referer);
                }
                return the_referer;
            }});
            //ga('set', 'referrer', 'http://'+the_referer);
            console.log(document.referrer);
        }
        change_referrer();
    });
</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXX-1"></script>
<script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){
        dataLayer.push(arguments);
    }
    gtag('js', new Date());
    gtag('config', 'UA-XXXXXXXX-1');
</script>

刚刚在尝试将 iframe 的父级 URL 设置为推荐人时遇到了这个问题。 我最终这样做了并且有效:

gtag('set', {
    referrer: "https://your-referrer-url.com"
})