谷歌分析与铁轨4

谷歌分析我的轨道4项目实施有点困难。 我将跟踪代码包括在我的布局文件的底部,甚至尝试删除turbolinks 这里build议,但是我谷歌仍然无法检测到这个跟踪cookie。 有任何想法吗 ?

我在几天前设置了Google Analytics(分析)

1.)Turbolink解决方法

借助Turbolinks,Google Analytics(分析)JavaScript库不足以logging每次页面更新的页面访问。

应该在每个页面上加载解决方法,并将其作为应用程序范围的资产(它将在Turbolink之前加载)包含在内。

添加文件app/assets/javascripts/analytics.js.coffee以包含Turbolinks解决方法:

 app/assets/javascripts/analytics.js // Coffee $(document).on 'page:change', -> if window._gaq? _gaq.push ['_trackPageview'] else if window.pageTracker? pageTracker._trackPageview() // Javascript $(document).on('page:change', function() { if (window._gaq != null) { return _gaq.push(['_trackPageview']); } else if (window.pageTracker != null) { return pageTracker._trackPageview(); } }); 

2.)创build一个页脚部分

只需创build一个部分到app/views/layouts – > _footer.html.erb

然后调用你的application.html.erb – > <%= render 'layouts/footer' %>

插入您的页脚Google Analytics跟踪代码:

 <script> (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'); ga('create', 'UA-XXXXXXX-XX', 'herokuapp.com'); ga('send', 'pageview'); </script> 

必须将您的跟踪ID和herokuapp.com replace为UA-XXXXXXX-XX ,如果有的话。

这里是不使用coffeescript的代码:

 app/assets/javascripts/analytics.js $(document).on('page:change', function() { if (window._gaq != null) { return _gaq.push(['_trackPageview']); } else if (window.pageTracker != null) { return pageTracker._trackPageview(); } }); 

我用这个gem,很容易设置。 没有额外的.js文件创build。 Rails 3助手来pipe理谷歌分析跟踪。 主要用于中小型网站。

只需安装gem:

 gem 'google-analytics-rails', '1.1.0' 

然后运行:

 bundle install 

最后,这个@生产环境configuration:

仅生产configuration/环境/ production.rb:

 # replace this with your tracker code GA.tracker = "UA-112233-4" 

app / views / layout / application.html.erb,在<head>标签中:

 <%= analytics_init if GoogleAnalytics.valid_tracker? %> 

推到Heroku后我立即看到结果。

我删除了Turbolinks,并使用RailsProjects脚本,在这里提供:

http://railsapps.github.io/rails-google-analytics.html

为我工作没有问题。 它检测到它,过了一会儿,我可以看到实时用户,所以我知道它正在工作。

编辑:脚本似乎支持Turbolinks打开或closures,这是伟大的。

 # If Turbolinks is supported, set up a callback to track pageviews on page:change. # If it isn't supported, just track the pageview now. if typeof Turbolinks isnt 'undefined' and Turbolinks.supported document.addEventListener "page:change", (-> GoogleAnalytics.trackPageview() ), true else GoogleAnalytics.trackPageview() 

我在添加GA的时候遇到了一些问题,所以我提到了一些博客和stackoverflow上的答案,并写了一个小博客。 请参阅此链接http://tarungarg402.blogspot.in/2015/01/google-analyicts-wth-rails.html

我在我的rails应用程序中使用这个。 我只是把这个在我的application.js.erb

 // GA racking code (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','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-XXXXX-<%= Rails.env.production? ? '1' : '2' %>', 'auto'); // I have 2 GA properties- one for debug and another for production // accommodate Turbolinks and track page views $(document).on('ready page:change', function() { ga('send', 'pageview'); });