簡體   English   中英

angulartics2 自定義事件發送到 facebook 但不發送到谷歌分析

[英]angulartics2 custom events are sent to facebook but not to google analytics

我將 angulartics2 與 angular7 項目一起使用,以將事件觸發到 facebook 和 google 分析。

我使用谷歌標簽管理器配置了 Facebook 和谷歌分析。

問題是我的自定義事件被觸發並發送到 facebook 而不是 google 分析。

<head>標簽下方,我有谷歌標簽管理器代碼。

在主要組件打字稿文件中,我添加了以下代碼:

constructor(
  private angulartics2GoogleTagManager: Angulartics2GoogleTagManager,
  private angulartics2Facebook: Angulartics2Facebook,
  private angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics
            ) {
    this.angulartics2Facebook.startTracking();
    this.angulartics2GoogleTagManager.startTracking();
    this.angulartics2GoogleAnalytics.startTracking();
...

例如,當人們將商品添加到購物車時,我想觸發一個關於它的事件。

所以在我的購物車服務中,我在構造函數中注入了 angulartics2:

 constructor(@Inject(LOCAL_STORAGE) private storage: StorageService,
                private angulartics2: Angulartics2
                ) 

然后在相關的地方我用以下代碼觸發事件:

    this.angulartics2.eventTrack.next({action: 'addToCart', properties: {category: 'Cart', label: keyName, value: quantity}});

使用 facebook pixel chrome 擴展我可以看到檢測到自定義事件,使用 google events chrome 擴展我可以看到沒有檢測到任何事件。

我錯過了什么? 我沒有正確配置?

谷歌分析在谷歌標簽管理器中配置正確,我確實看到用戶計數和頁面瀏覽量正確計數。

任何有關此問題的信息將不勝感激。

謝謝

更新

感謝@XTOTHEL,提供更多調查信息。

所以在app.component.ts構造函數中我只啟用了谷歌標簽管理器來開始跟蹤。

不幸的是,谷歌標簽管理器沒有檢測到任何被觸發的事件。

在向購物車添加東西后附上谷歌標簽管理器控制台的屏幕截圖,以及添加addToCart自定義事件的 angulartics2 代碼被觸發。

在此處輸入圖片說明

更新 2

用於交互 addToCart 的標簽選項卡

用於交互 AddToCart 的數據層選項卡

我不知道這是否是您要查找的內容,但是我從 Angulartics2GoogleTagManager 的 pushLayer 方法中獲得了一些 GTM 事件,該事件來自在 Angulartics2GoogleTagManager 上擴展的服務:

@Injectable()
export class GoogleTagManagerService extends Angulartics2GoogleTagManager {

  public gtmProperties: GoogleTagManagerProperties = new GoogleTagManagerProperties();

  pageTrack(path: string) {
    if (typeof dataLayer !== 'undefined' && dataLayer) {
      dataLayer.push({
        event: 'pageView',
        action: path,
        'content-name': path,
        userId: this.angulartics2.settings.gtm.userId,
        ...this.gtmProperties
      });
    }
    return true;
  }

  setSearchCriteria(type: string, criteria) {
    this.pushLayer(type.toLowerCase().indexOf('listings') > -1 ?
      {
        event: 'search',
        action: type,
        'content-name': type,
        userId: this.angulartics2.settings.gtm.userId,
        searchCriteriaListings: criteria
      } : {
        event: 'search',
        action: type,
        'content-name': type,
        userId: this.angulartics2.settings.gtm.userId,
        searchCriteriaPostings: criteria
      });
  }

}

這會給我帶來一個新的 dataLayer,其中包含如下信息: 在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM