Googleでは、低速のモバイル接続で検索するユーザー向けに、非AMPページを軽量で読み込みが速いページに変換する機能が提供されています。詳しくはこちら。
ページが軽量化されて低速回線でも素早く表示されるようになる便利な機能ですが、イベントトラッキングがレポートされないという欠点もあります。ブラウザはChromeブラウザとAndroidブラウザでしか機能しないですし、特定の条件下でしか軽量化はされませんが、自動軽量化機能を完全に拒否する方法をご紹介いたします。
Googleのモバイルページ自動軽量化機能を拒否する方法
モバイルページ自動軽量化機能を拒否するには、HTTPレスポンスヘッダに「Cache-Control:no-transform」を設定します。
WordPressの場合
WordPressの場合は、functions.phpに以下を追加します。
add_action( 'send_headers', function() { header( 'Cache-Control: no-transform' ); } );
通常のHTMLサイトの場合
WordPress以外の場合は、.htaccessに以下を追加しましょう。
Header set Cache-Control no-transform
自動軽量化機能の拒否を確認する方法
自動軽量化機能が拒否されているかどうかをチェックする場合は、
http://googleweblight.com/?lite_url=[your_website_URL]
[your_website_URL]の部分は、サイトのURLに変更します。例えば、当ブログの場合は以下の通り。
http://googleweblight.com/?lite_url=https://techmemo.biz
自動軽量化機能が拒否されている場合は、「Transcoding test failed」と表示されます。自動軽量化が拒否されていない場合は、軽量化されたサイトが表示されます。
あとがき
特段理由がなければ自動軽量化を拒否する必要はありませんが、確実にイベントトラッキングを取得したいとか、アフィリエイトリンクが対応していないといった場合は、上記手順をお試しください。