谷歌分析跟踪代码与用户ID
Google Analytics tracking code with User-ID
我正在努力让用户ID功能在谷歌分析中发挥作用。为了做到这一点,我必须使用JavaScript将一个PHP变量传递给Google Analytics。
我试图通过在PHP脚本中回显所有的Javascript来实现这一点。
这是脚本:
<?php
if (isset($username)) {
echo "'n";
echo "<script type='text/javascript'>'n";
echo "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');'n";
echo "ga('create', 'UA-********-1', 'auto');'n";
echo "ga('set', 'userID', '" . $username . "');'n";
echo "ga('send', 'pageview');'n";
echo "</script>'n";
} else {
echo "'n";
echo "<script type='text/javascript'>'n";
echo "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');'n";
echo "ga('create', 'UA-********-1', 'auto');'n";
echo "ga('send', 'pageview');'n";
echo "</script>'n";
}
?>
不幸的是,它不起作用。有人能告诉我我做错了什么吗?
更新2015-12-03
我决定使用一种更直接的方法来测试用户是否登录,此外,我还将不同的回声组合为条件语句的每一个分支:
<?php
if (login_check($mysqli) == true) {
echo "<!-- Google Analytics with userId -->
<script>
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
ga('create', 'UA-XXXXX-Y', 'auto');
ga('set', 'userId', '" . $_SESSION['user_id'] . "');
ga('send', 'pageview');
</script>
<script async src='//www.google-analytics.com/analytics.js'></script>
<!-- End Google Analytics -->";
} else {
echo "<!-- Google Analytics with pageview only -->
<script>
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
ga('create', 'UA-XXXXX-Y', 'auto');
ga('set', 'userId', '" . 'anonymous' . "');
ga('send', 'pageview');
</script>
<script async src='//www.google-analytics.com/analytics.js'></script>
<!-- End Google Analytics -->";
}
?>
这个新片段有效。不过请注意,我必须设置userId
才能使else语句中的代码工作。如果您在Google Analytics中启用用户跟踪,则必须设置userId
。我还没有证实这一点,但这似乎是一个合理的推论。
您正在使用的用户ID参数的名称不正确。它应该是userId
(驼色大小写),但您使用的是userID
。此外,请确保从GA界面启用了用户ID功能。
相关文章:
- 显示某个用户ID的某个标签的30张Instagram图片
- JSON获取用户id's在嵌套数组中
- 将URL字符串${userid}替换为javascript对象中的实际用户id
- 嵌入iframe URL以在wordpress中包含当前用户id
- 更改错误文本“用户 ID 或密码不正确”
- 如何通过声云 api 调用获取用户 ID
- Javascript RegExp 以匹配用户 ID 模式
- 使用谷歌分析'Wordpress网站的用户ID功能
- 从用户id和电子邮件的.csv文件在facebook上发送好友请求
- Piwik:如何跨域(PHP/JS)跟踪访问者(用户ID)
- 正在尝试验证用户ID
- 如何使用Google Analytics Dimensions在多个表单页面上跟踪用户ID
- 正在获取facebook用户ID
- 无法获取用户 ID 路由参数以在反应路由器中继上工作
- Ajax - 在“成功”之后转到另一个页面,从那里的URL中检索用户ID
- 如何将数据(如用户 ID)传递给 Web 工作人员,以便从服务器获取其他推送通知数据
- 从phonegap facebook登录中获取用户ID
- 如何在 AJAX 中制作 3 个条件来检查用户 ID
- 无法从 facebook javascript login API 获取用户 ID
- 按用户 ID 返回 Soundcloud 曲目列表