我已在页面底部添加了所需的JavaScript,以便可以使用Google Analytics(分析)。唯一的问题是,我确定它将所有开发工作都算是热门。每天我可能会看到其中一些页面一百次,这确实会使我的阅读出现偏差。是否可以通过特定的IP地址将其关闭,还是应该在构建过程中构建此东西,以便仅在构建进行部署时才添加它?
我已在页面底部添加了所需的JavaScript,以便可以使用Google Analytics(分析)。唯一的问题是,我确定它将所有开发工作都算是热门。每天我可能会看到其中一些页面一百次,这确实会使我的阅读出现偏差。是否可以通过特定的IP地址将其关闭,还是应该在构建过程中构建此东西,以便仅在构建进行部署时才添加它?
Answers:
是的,您进入“ Google Analytics(分析)设置”,编辑您的网站,然后通过“ +添加过滤器”来定义不包含IP地址的过滤器。
过去的数据不会在应用过滤器的情况下重新生成,因此您只能从中受益。
localhost
。如果您通常在子域下具有测试环境,则只需排除该环境即可。
我喜欢使用javascript的简单方法。它可以在任何地方工作。
<script type="text/javascript">
if (document.location.hostname.search("myproductiondomainname.com") !== -1) {
//google analytics code goes here
}
</script>
if (document.location.hostname == "example.com") { /* ga code */ } else { _gaq = {push: function(arg) {console.log("ga:", arg)}}}
-这使我可以在代码中的任何地方安全地使用事件跟踪器和自定义_gaq调用,同时还可以在开发环境中调试GA调用。
if(/example\.com/.test(window.location.hostname)) { /* GA code */ }
var ga; if (document.location.hostname == "example.com") { /* GA script here */ } else { console.log("Running non-production google analytics replacement now"); ga = function(arg) { console.log("ga:", arguments);};} ga('create', 'UA-xxxxx', 'auto'); ga('send', 'pageview');
2014年,我对所有现有解决方案仍然不满意...
因此,我创建了自己的浏览器扩展程序... https://chrome.google.com/webstore/detail/lknhpplgahpbindnnocglcjonpahfikn
它通过始终为您选择的域在您的计算机上保留“开发者cookie”来工作。然后,您只需在脚本中检查此cookie,然后再将任何数据发送到Google Analytics(分析)。您可以在扩展程序的设置中为Cookie自定义唯一的名称和值。一组人员可以轻松使用此功能,因此开发人员,内容创建者,校对人员以及组织中的任何其他人员都可以查看页面,而不会夸大统计信息。
如何将代码放入网页的示例...
的JavaScript
if (window.location.host==="mydomain.com" || window.location.host==="www.mydomain.com") {
if (document.cookie.indexOf("COOKIENAME=COOKIEVALUE") === -1) {
// Insert Analytics Code Here
}
}
的PHP
if ($_SERVER['HTTP_HOST']==="mydomain.com" || $_SERVER['HTTP_HOST']==="www.mydomain.com") {
if (@$_COOKIE["COOKIENAME"] !== "COOKIEVALUE") {
// Insert Analytics Code Here
}
}
验证HOST名称等于您的活动站点的域(“ mydomain.com”),可以确保从测试域(例如“ localhost”或“ beta.mydomain.com”)进行查看时,任何访问者都不会发送分析数据。 。在上面的示例中,“ www.mydomain.com”和“ mydomain.com”是我们希望记录访问的两个有效域。
实时站点将按预期方式将数据发送到分析,除非找到具有匹配值的开发人员Cookie。如果它看到您的设备上设置了唯一的cookie,则您的访问将不会计入Google Analytics(分析)或您希望使用的任何其他分析工具中的总数。
随时分享我的解决方案,并使用我的扩展程序保留这些cookie。
如果您不使用静态IP,则在GA上设置IP过滤器将无济于事。
设置环境变量并有条件地显示它。以下面的Ruby on Rails代码为例:
<% unless RAILS_ENV == "development" %>
<!-- your GA code -->
<% end %>
您可以在任何操作系统上使用的每种语言/框架来扩展此行为。在PHP上,可以使用getenv函数。在环境变量的Wikipedia页面上进行检查,以了解如何在系统上进行操作。
您可以使用此代码
<script>
var host = window.location.hostname;
if(host != "localhost")
{
// your google analytic code here
}
</script>
如果您落后于NAT或由于其他原因而无法将IP分配给Google Analytics(分析),那么最简单的方法是将google Analytics(分析)域设置为localhost(127.0.0.1),从现在开始打开浏览器时,所有请求Google Analytics(分析)将被引导到您的工作站,而无需了解Google Analytics(分析)。
我们为开发和质量检查工作设置了第二个Google Analytics(分析)跟踪代码-当您要测试分析集成时,它实际上派上了用场,还确保了您不会流失到生产统计信息中。
解决方案是使用Google跟踪代码管理器跟踪(GTM)处理您的Google Analytics(分析)。这样一来,您只需在生产域上触发Google Analytics(分析),而无需在网站的代码中编写任何条件代码。方法如下:
在GTM中,设置一个仅在页面主机名包含您的生产域时才会触发的触发器。
然后为Universal Analytics设置标签,并将其触发器设置为您刚刚创建的标签。
有一些Chrome扩展程序可以为您完成此操作,例如https://chrome.google.com/webstore/detail/fadgflmigmogfionelcpalhohefbnehm
如果您的IP地址不是静态的,则非常方便。
在您的Google Analytics(分析)异步代码运行以禁用对该网络载体ID的跟踪之前,添加以下行:
window['ga-disable-UA-XXXXXX-Y'] = true;
UA-XXXXXX-Y
对应于您要禁用跟踪的网络载体ID。
来自:https : //developers.google.com/analytics/devguides/collection/gajs/
要禁用本地主机点击,只需创建一个过滤器即可排除本地主机。转到管理->属性->查看设置。查看以下屏幕截图以获取帮助。
如果您使用非静态IP来访问,则要自己禁用生产URL匹配,您可以使用Chrome扩展程序(例如Developer Cookie)跳过运行Google Analytics(分析)代码(如果您使用的话)。
我个人不执行此操作,因为我使用的是广告拦截器,该广告拦截器已经在我的浏览器上屏蔽了Google Analytics(分析)。
就像别人提到的那样,您可以在本地托管google-analytics.com域,也可以设置一个功能来查看您是否在开发网络中工作。
请记住,如果没有加载http://www.google-analytics.com/ga.js,并且您使用了onclick javascript函数来帮助跟踪页面元素上的点击。
IE:onclick =“ javascript:pageTracker._trackPageview('/ made / up / folder / reference');
您将遇到JavaScript错误,这将阻止jQuery或其他强大的JavaScript函数正常运行。
作为对此的附加选择,我有一台开发服务器,其中包含许多不同的站点和开发人员。这意味着我对3个主要选项并不特别满意
我没有以其他方式在此处实现其他选项,而是通过以下方式解决了该问题。在全局httpd.conf中(而不是特定于站点的),我使用了apache模块mod_substitute来模拟另一个答案中的hosts文件修复所产生的效果,但是对于每个开发站点和每个开发人员都是自动的。
启用模块
CentOS:打开/etc/conf/httpd.conf
并添加以下行
LoadModule substitute_module modules/mod_substitute.so
Ubuntu / Debian:运行以下命令
sudo a2enmod substitute
启用模块后,将以下行添加到httpd全局配置文件中
CentOS的:/etc/conf/httpd.conf
Ubuntu / Debian:/etc/apache2/httpd.conf
# Break Google Analytics
AddOutputFilterByType SUBSTITUTE text/html
Substitute "s|.google-analytics.com|.127.0.0.1|n"
然后重新启动Apache
CentOS的:service httpd restart
Ubuntu / Debian:/etc/init.d/apache2 restart
这样做是在apache为页面提供服务时,将所有与.google-analytics.com匹配的文本替换为.127.0.0.1,以便您的页面呈现类似于以下示例的分析代码
var _gaq = _gaq || [];
_gaq.push(['_setAccount', '']);
_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') + '.127.0.0.1/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
我知道这篇文章已经过时了,但是没有一个解决方案可以满足我的需求。我不仅要从GA(和FB)中删除开发人员,而且还希望公司中的某些人员不被GA和FB计入。因此,我想为那些人提供一种相对简单的方法,让他们在没有插件的情况下排除自己的分析范围,或者排除域ip(因为拥有笔记本电脑的人徘徊)。
我创建了一个网页,用户可以访问该网页,然后单击链接以选择退出GA和FB跟踪。它为该网站放置一个cookie。然后,我检查该Cookie,以确定是否应将数据发送到GA和FB。
我最初是在名为Dahlia的网站上进行设置的,该网站是希腊东正教婚礼和洗礼的精品店。。
这是代码:
我将以下代码放在所有网页的标题中:
<script>
//put in your google analytics tracking id below:
var gaProperty = 'UA-XXXXXXXX-X';
// Disable tracking if the opt-out cookie exists.
var disableStr = 'ga-disable-' + gaProperty;
if (document.cookie.indexOf(disableStr + '=true') > -1) {
window[disableStr] = true;
window['ga-disable-UA-7870337-1'] = true; //This disables the tracking on Weebly too.
} else {
//put in your facebook tracking id below:
fbq('init', 'YYYYYYYYYYYYYYY');
fbq('track', 'PageView');
}
</script>
确保在提供的空格中添加您的GA和FB跟踪ID。这最初是为Weebly(购物CMS)网站编写的。因此,如果您不在Weebly上,则可以删除提及weebly的行。
然后,我创建了一个名为“请勿跟踪”的新网页,标题中包含以下代码:
<script>
//put in your own google analytics tracking id below:
var gaProperty = 'UA-XXXXXXXX-X';
var disableStr = 'ga-disable-' + gaProperty;
// Opt-out function
function gaOptout() {
document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';
window[disableStr] = true;
gaOptoutCheck();
}
// Check Opt-out function
function gaOptoutCheck() {
var name = "ga-disable-"+gaProperty+"=";
var ca = document.cookie.split(';');
var found = "false";
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0) found = "true";
}
if (found == "true") alert("Cookie is properly installed");
else alert("COOKIE NOT FOUND");
}
</script>
以及体内的以下代码:
<a href="javascript:gaOptout()">Click here to opt-out of Google and Facebook Analytics</a>
<br><br>
Please visit this page on every computer, laptop, phone, tablet, etc. that you use;
and for all browser you use on each of those devices.
<br><br>
If you ever remove cookies from browser, you will need to repeat this process for that browser.
<br><br><br>
<a href="javascript:gaOptoutCheck()">
Click to check if cookie is set</a>
<br><br>
这是我为Weebly网站撰写的全文
希望这对某人有帮助!
我为我的本地开发设置了一个PHP变量,当我从事某些工作时,它为我提供了提供数据/反馈等功能的终端。
我使用XAMPP,以便为tmp提供一个env变量,如下所示:
$isLocal = (getenv("tmp") == '\xampp\tmp') ? true : false;
这在我的生产服务器上不存在,因为未使用xampp
if($isLocal){
// do something, eg. load my terminal
}
...特定于此问题:
<?php if(!$isLocal){ ?>
<!-- Insert Google Analytics Script Here -->
<?php } // end google analytics local check ?>
今天,在与我的计算机不同的计算机上,我注意到μBlockOrigin for Chrome默认情况下会阻止Google AdSense。经过一番谷歌搜索,我发现了这篇文章。它还指出,默认情况下,μBlockOrigin Firefox,μAdblock(用于Firefox)和Ad Muncher(用于Windows)会阻止AdSense。列出的其他大多数选项都可以配置为阻止AdSense。
这似乎行得通并且很有用,因为我的IP通常是动态的,因此只要我登录到Chrome,Chrome扩展程序就可以跟随我。