robots.txtでポップアップを読ませない Googleミューラー氏が回避策を提示
マーケティング関連Search Engine Roundtable
SEOrobots.txtGooglebotレンダリングJohn Muellerポップアップ
Google の John Mueller 氏が、API 経由で読み込むサードパーティ製ポップアップを Googlebot にレンダリングさせない方法として、配信元ドメインの robots.txt での Disallow を「一般的には機能する」と回答した。編集できない場合は自サイト側の専用スクリプトを Disallow する方法も挙げている。
何が発表されたか
- Google の John Mueller 氏が Reddit の r/TechSEO で、API 経由で読み込む年齢確認ポップアップを Googlebot にレンダリングさせない方法について回答した。Search Engine Roundtable が11月3日に報じた。
- ポップアップの配信元ドメインの robots.txt で Disallow すれば「一般的には機能する」との回答。Googlebot がレンダリング時に取得しないため、その内容を使えなくなる。ただし当該ドメインの robots.txt を自分で編集できる場合に限る。
- 配信元を編集できない場合は、ポップアップを読み込む自サイト側の特定の JavaScript ファイルを、自分の robots.txt で Disallow する方法もある。氏は一般的ではないが選択肢だとしている。
- 注意点として、多機能な共有スクリプトのブロックは他のページ機能に影響するため避けるべきで、対象URLが取得されない状態でもページが正常に表示されることを確認する必要があるとした。氏はポップアップの類では通常問題にならないとも述べている。
実務への影響
年齢確認、Cookie 同意、キャンペーンモーダルの文言がインデックス対象のテキストに混ざる問題は、制作案件で定期的に相談を受ける類のものだ。今回の回答で、対処の優先順がはっきりした。
- 配信元ドメインの robots.txt で Disallow(最もきれい)
- 自サイト側の、そのポップアップ専用の JS ファイルだけを Disallow
- 全機能入りの共有バンドル(タグマネージャの配信ファイルなど)には手を出さない
実行前後で Search Console の URL 検査を使い、レンダリング結果からモーダルのテキストが消えたか、同時にレイアウト崩れや主要コンテンツの欠落が起きていないかを必ず確認したい。モーダル配信SaaSを使っている案件では robots.txt を自分で触れないことが多いため、SaaS 側に専用サブドメインと robots.txt の提供可否を問い合わせるのが近道になる。
補足
公式発表は未確認。Google のドキュメント更新ではなく、フォーラムでの個別回答を Search Engine Roundtable が報じたもの。氏自身も「他の方法もあるはず」と述べている。
