在iframe上使用Google Analytics跟踪

11

如何使用Google Analytics跟踪iframe中的URL?

我的做法是将此代码放入iframe内,就像我在“顶部”窗口上做的一样。但是iframe在分析中没有被跟踪?

这应该可以解决问题,但是它却没有……:(

iframe

<html>
    <head>
        <script type="text/javascript">
            var _gaq = _gaq || [];
            _gaq.push(['_setAccount', 'UA-35706930-1']);
            _gaq.push(['_trackPageview']);
            
            (function() {
                var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
                ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
                var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
            })();
        </script>
    </head>
    
    <body></body>
</html>
1个回答

8
表面上看,它应该可以工作。但是GA将基于iframe URL而不是父URL进行跟踪,因此如果iframe托管在其他域上,则根据GA中的设置,您可能会遇到问题。请检查您是否使用正确的帐户号码。检查您的设置中是否有任何配置文件过滤器(例如“仅包括xyx.com”域)或排除域等内容。

还要注意,如果iframe位于不同的域上,您将遇到有关会话和访问者指标的跟踪问题。为了解决这个问题,您需要实现额外的跨域跟踪。没有这个东西不会导致没有数据显示,因此这本身不是根本问题。


@Clark 你解决了跨域追踪的问题吗?可以详细解释一下解决方案吗? - Giovanni Bitliner
您的链接已过期,请使用此链接:https://support.google.com/analytics/answer/1034342?hl=zh-Hans#zippy=%2Cin-this-article - molikh
我的gtag.js在iframe中,如果该iframe位于Chrome扩展程序内部,则不会调用收集点www.google-analytics.com/g/collect - Dee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接