什麼是GTM (Google Tag Manager)

什麼是GTM(Google Tag Manager)

gtm是谷歌開發的跟蹤代碼管理器, 能夠在平臺上添加和更新本身的代碼,用於轉化跟蹤、網站分析、再營銷等用途。javascript

優勢

  • 靈活性, 無需修改項目源代碼就能夠部署更新
  • 網站統計分析的代碼能夠統一管理
  • 功能強大, 能夠添加js,html,圖片等模板, 與第三方工具高度集成
  • 方便調試

如何使用

gtm有免費的版本, 能夠上 marketingplatform.google.com/about/ 註冊並開通帳號, 以後gtm會給你一個js代碼塊, 須要你放到每一個html頁面的<head>標籤裏面, 代碼相似於下面這樣, 裏面會有個GTM-XXXXX 即是你的gtm container的ID, 須要替換成你本身container 的idhtml

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-XXXXX');</script>
<!-- End Google Tag Manager -->
複製代碼

Tag (代碼片斷)

gtm最重要的部分, 能夠在tag裏面部署 google數據分析相關服務, 或者第三方服務, 若是某些服務商沒有集成在gtm裏面, 還能夠經過嵌入自定義代碼的方式來部署. 能夠看到tag裏面有至關多的方式來部署你的代碼.java

image-20190404121405992

Trigger (觸發器)

每一個tag必須關聯trigger用來觸發tag的執行. 舉個例子, 你但願某段統計代碼只有在訪問特定url的時候纔會執行上報, 這時候就須要添加trigger來指定條件.數組

Trigger 有至關多的觸發方式, 你能夠選擇頁面加載完成後觸發, 某些dom元素可見時觸發, 用戶點擊某個按鈕觸發等等.dom

image-20190404114656052

Variable (變量)

大部分狀況下數據統計都須要上傳必定的信息, 好比電商網站須要統計用戶購買了何種商品, 數量及價格等等, 或者用戶點擊了哪些按鈕, 這些都須要經過變量的形式來定義, 變量設置後tag和trigger均可以引用, trigger能夠引用變量來定義一些觸發條件, 好比用戶在某種語言下才觸發. tag能夠獲取variable的值並上傳到相關的服務商.async

variable也有不少類型, 能夠是當前頁面的url, 或者是自定義js計算獲得的值.工具

最廣泛使用的則是 Data Layer Variable網站

image-20190404115630443

Datalayer(數據層)

gtm腳本運行時會建立一個dataLayer的全局對象, dataLayer實際是是一個數組, 你能夠經過dataLayer.push()來添加相關的數據, 能夠很方便的在gtm variable裏面獲取到.ui

好比你添加了一個描述當前頁面類型的屬性dataLayer.push({pageType:'home'}), 就能夠經過這樣定義Variable來取值google

image-20190404120837582

這裏要注意的是取值的時機, 好比你在用戶購買某個商品以後將相關的數據添加到dataLayer, 那麼若是某個Trigger在這個按鈕點擊以前就被觸發(如 PageView類型的trigger), 那麼這時候是獲取不到這個商品的信息的. 因此理清trigger的觸發條件, variable 被添加的時間是很是重要的, 若是順序亂了就會獲得undefined的結果, 影響到數據統計的準確性.

相關文章
相關標籤/搜索