我想跟蹤我的Rails應用程序的每個頁面,使這部分的佈局:與谷歌Analytics跟蹤在Rails的註冊頁面設計
var analyticsId = '<%= Settings.env.app.analytics_id %>';
(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', '<%= Settings.env.app.analytics_id %>', 'auto', 'trackEvent: true');
ga('send', 'pageview');
加入谷歌Analytics(分析)ID來設置後,我可以在我的Google Analytics(分析)信息中心看到我的users#sign_in
頁面的訪問,但不會訪問我的users#sign_up
頁面。 通過螢火控制檯I看到spected結果在HTML代碼中檢查兩個網頁:
var analyticsId = 'UA-XXXXXXXX-X';
(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-XXXXXXXX-X', 'auto', 'trackEvent: true');
ga('send', 'pageview');
隨着「UA-XXXXXXXX-X」 =其在配置/設置/應用程序中定義Settings.env.app.analytics_id 。analytics_id下的.yml。
我們用設計來處理登入/註冊proccess,這是在routes.rb中
Rails.application.routes.draw do
devise_for :users, controllers: {
confirmations: 'users/confirmations',
registrations: 'users/registrations'
}
ActiveAdmin.routes(self)
authenticated :user do
devise_scope :user do
root to: redirect("/home")
end
end
unauthenticated do
devise_scope :user do
root to: redirect("users/sign_in"), as: "unauthenticated_index"
get '/pages/:page', to: 'pages#show', as: "pages_show"
end
end
哪裏'Settings.env.app.analytics_id'從何而來?它基於應用程序本身還是基於某些登錄用戶?你能詳細解釋一下這個問題與Devise的關係嗎?上面代碼片段的生成HTML是什麼? –
感謝advise @ thiago-belem,已經更新了我的問題。 – Ibrah