【发布时间】:2019-06-25 16:01:31
【问题描述】:
Google Analytics 中是否有一种支持的方式来跟踪广告系列,而无需使用查询字符串参数。
在 Analytics 中,您可以使用 utm_campaign 和 utm_medium 等查询字符串参数在 tag a link to your site 中携带有关活动的信息,以便对其进行跟踪。
Google 实际上有一个online tool 来帮助创建此类链接。
例如,如果 StackOverflow 在 Experts Exchange 上做广告,他们可能会有这样的链接:
出于多种原因,我不希望这些看起来笨拙的参数出现在我的 URL 中:
- 我想鼓励发推特,而长链接不鼓励这样做
- 我不希望人们用活动 ID 为他们添加书签
- 我希望人们看到一个干净的 URL
- 我不希望搜索引擎将这些链接编入索引。
- 我希望完全控制发送到谷歌分析的参数 - 而不是让我的合作伙伴搞乱他们访问我网站的 URL
我不久前试图找到一种可以设置这些参数的方法。 Google has a page 乍一看似乎是解决方案,但实际上并非如此。该页面描述了如何将查询字符串参数的名称更改为其他名称 - 例如使用 src 而不是 utm_source 您将运行:
pageTracker._setCampSourceKey("src");
我似乎真的无法弄清楚为什么他们不能轻松地明确设置 utm_source 键的值 - 而不仅仅是为其设置一个替代参数名称。
我记得前段时间找到了一个有某种讨厌的黑客的人,但我现在似乎找不到了。我似乎记得,无论是谁拿到了分析代码的副本,基本上都将其分支出来并对其进行了黑客攻击。这对我来说不是一个好的解决方案!
是否有官方支持的方式来执行此操作,而无需某种讨厌的重定向。
简而言之,我想做这样的事情(ASP.NET MVC 站点)。使用这样的 URL 为我的网站提供一个链接:
http://www.example.com/?cid=2dae88a8-66b1-475d-8a35-2978bd1a158c
在我的 MVC 页面的控制器中,我会找出这个 GUID 与哪个活动相关,并设置模型状态。注意:这给了我一个优势,我可以更改活动参数而无需重新发布 URL。
在页面本身我会这样做:
var campaignMedium = <%= ViewData.Model.CampaignMedium %>;
var campaignSource = <%= ViewData.Model.CampaignSource %>;
var campaignName = <%= ViewData.Model.CampaignName %>;
pageTracker._setCampaignData({
utm_source: campaignSource,
utm_medium: campaignMedium,
utm_campaignName: campaignName
});
pageTracker._trackPageview();
重要提示:此 _setCampaignData 方法实际上并不存在。这只是我希望能够做的“伪代码”。
有没有人成功地做到了这样的事情?
【问题讨论】:
-
添加赏金因为我真的很想看到这个问题的任何更新 - 但没有足够的时间(或乐观)来自己研究它。虽然手指交叉!谢谢
标签: javascript google-analytics