WordPressテーマ「Simplicity2」のAMP機能を有効化し、かつ、Google Analyticsの設定をテーマカスタマイザーで行っている場合、自動でAMPページにもAnalyticsのコードが設置されます。
AMPページでAnalyticsを利用するためには、amp-pixelタグを使う方法とamp-analyticsタグを使う方法の2種類がありますが、Simplicity2ではamp-pixelが使われているようです。
Analyticsに記録されるデータをチェックしてみると、通常のページとAMPページの区別ができない状態になっていたので、これを変更してみました。
AMPページのAnalyticsコードを変更
AMPページのテンプレートであるsingle-amp.phpにAMP用のAnalyticsコードが記述されています。
<amp-pixel src="//ssl.google-analytics.com/collect?v=1&tid=<?php echo get_tracking_id() ?>&t=pageview&cid=<?php echo mt_rand(0, 99999999); ?>&dt=<?php the_title() ?>&dl=<?php the_permalink() ?>&z=<?php echo mt_rand(0, 99999999); ?>"></amp-pixel>
AMP HTMLとWordPressのPHPコードが混ざっていて見づらいですが、ポイントはsrc属性です。ここでAnalytics側に渡されるデータの設定をしています。
今回注目するのは「dt=<?php the_title() ?>」と「dl=<?php the_permalink() ?>」の部分。前者はページタイトル、後者はURLを示しており、ここで指定したページタイトルとURLがAnalyticsに記録されます。
※amp-pixelタグを用いたAnalyticsの設定については以下のページが詳しいです。あわせてご覧ください。
Use Google Analytics in AMP HTML · GitHub
URLの変更
初期状態ではAnalyticsに渡すURLにthe_permalink()が指定されており、AMPページへのアクセスが発生しても通常ページのURLが記録されるようになっています。
そこで、「dl=<?php the_permalink() ?>」の部分を「dl=<?php the_permalink() ?>?amp=1」と変更しました。これで、AMPページへのアクセスが発生した場合に、末尾に「?amp=1」が付加されたURLが記録されるようになります。
ページタイトルの変更
※Simplicity2バージョン2.4.0ではAMPページのtitleタグのブログ名が重複してしまう不具合があるので、まずはこれを修正しました。
AMPタイトルのサイト名が設定によっては重複してしまう不具合修正 · yhira/simplicity2@6a21ace · GitHub
URL変更のついでにページタイトルの変更も行いました。
初期状態では「dt=<?php the_title() ?>」となっていますが、これを「dt=<?php the_title() ?> | <?php bloginfo(‘name’); ?>」に変更。titleタグと同様に「記事タイトル | ブログ名」のタイトルがAnalytics側に渡されるようにしました。
最終的にはこのようなコードに
最終的にamp-pixelタグはこのようになりました。
<amp-pixel src="//ssl.google-analytics.com/collect?v=1&tid=<?php echo get_tracking_id() ?>&t=pageview&cid=<?php echo mt_rand(0, 99999999); ?>&dt=<?php the_title() ?> | <?php bloginfo('name'); ?>&dl=<?php the_permalink() ?>?amp=1&z=<?php echo mt_rand(0, 99999999); ?>"></amp-pixel>
おわりに
AMPページにおけるAnalyticsについては、しばらくこのセッティングで様子を見てみます。
なお、今回の方法では直接single-amp.phpを変更しているので、テーマをアップデートした際にはリセットされてしまいます。テーマカスタマイザーでGoogle Analyticsの詳細な設定ができればよいのですが…。
コメント