とにかく、私はこれらすべてに少し慣れていないので、ここで少し頭を悩ませています。
Google Site Kit を使用して GA スニペットが挿入されたサイトを WP で使用しています。ユーザーが登録すると、ユーザー ID をカスタム ディメンションに設定するプラグインがあります。
この「セット」を実行するコードは、add_action('wp_footer')
コマンドで WP フッターに追加されています。
コードは次のようになります。
<script type=\"text/javascript\" id=\"set-google-id-dimension\">
document.addEventListener(\"readystatechange\", event => {
if (event.target.readyState === \"complete\") {
try{
gtag('event', 'registration', {'dimension1': '".$client."'});
}catch(e){
try{
ga(function() {
// Logs an array of all tracker objects
var trackers = ga.getAll();
var firstTracker = trackers[0];
console.log('tracker: '+firstTracker.get('name'));
ga(firstTracker.get('name')+\".set\",\"dimension1\" ,\"".$client."\");
});
}catch(e){
console.log('GA and GTAG not defined');
}
}
}
});
</script>
読みやすくするために、PHP を取り除いていますが、これはフッターに反映されています。
なぜ GTAG と GA コマンドなのですか? 両方の分析がコンソールに出力されていますが、サイト所有者は「Google Site Kit しか使用していない」ため理由を知りません。
現在、このコードは私が管理している開発サイトで動作します (ライブ サイトを可能な限り模倣するように設定しました)。
ただし、「ライブ」サイトでは、「set」コマンドが実行されていることを確認できても、ディメンションは設定されません (コンソールのタイムスタンプは無視してください。サイトから移動する前にスクリーンショットを撮るのを忘れて、移動する必要がありました)。戻ってページをリロードします):
ライブ サイトはデフォルトのトラッカーを使用しないためga.getAll()
、トラッカー情報にアクセスするための呼び出し。私が見る限り、すべてがうまくいくはずです。
この質問 Google アナリティクスのカスタム ディメンションが設定されていないことを 確認して、「設定」が「送信」の前に来る必要があることを理解しています。
プラグインはページビューをGAに送信しないため、これを達成する方法はわかりません。私が理解していることから、それはGoogle Site Kitです。このプラグイン コードがロードされたときに 2 番目のページビュー送信を追加することを検討しました (登録直後にのみ実行され、再度実行されることはありません) が、それではページ ヒットが歪んでしまいます。
このサイトには何年にもわたって無数の「管理者」がいるので、プラグインの 1 つに埋もれた何かがどこかで競合を引き起こしていても驚かないでしょう。ある時点でタイミングの問題だと思ったので、関数を 50 ミリ秒ごとにロードして 'ga' が定義されているかどうかをチェックしてから、'set' コマンドを実行しました (反復回数は 35 回に制限されています)。同じです (コンソールで実行するコマンドを設定できましたが、ディメンションには値が反映されませんでした)。
デバッグして根本原因を突き止めるためのアドバイスは、私にとって非常に役立ちます。ご不明な点がございましたら、お気軽にお問い合わせください。できる限り迅速に対応いたします。