[レベル: 初級]
ページ内の特定のコンテンツを Google 検索にインデックスさせないようにすることはできません。
一般的に、そのページにあるものすべてがインデックス対象になります。
特定のコンテンツのインデックスをブロックする仕組みはない
記事の一部分をインデックスさせたくない、言い換えれば検索の対象にしたくないという要望をときおり耳にします。
Google が公式に公開している仕組みを利用する限りにおいては、この要望を実現することはできません。
Google 検索アプライアンス(Google Search Appliance、GSA。すでに提供終了)には googleoff
という特殊なタグがあり、このタグを利用することで特定のコンテンツを検索対象から除外することが可能でした。
しかしながら、googleoff
は GSA でのみ利用できる専用の仕組みです。
通常の Google 検索では機能しません。
Google 検索においては、特定のコンテンツのインデックスをブロックする仕組みはないのです。
スニペット引用なら拒否可能
特定のテキストのインデックスを拒否することはできませんが、スニペットに引用されることを拒否することならできます。
data-nosnippet
を用います。data-nosnippet
は検索結果のスニペットを制御するために導入された新しい HTML 属性です。span
、div
または section
などのタグと組み合わせて使います。
たとえば、次のようにマークアップしたとします。
<p>僕の好きな果物はリンゴとミカン、イチゴ、桃です。<span data-nosnippet>バナナはあまり好きではありません。</span></p>
data-nosnippet
で囲まれた「バナナはあまり好きではありません」はスニペットとしては利用されなくなります。
ただし、インデックスはされます。
言い換えれば、検索の対象になりえます。
data-nosnippet
属性の技術的な詳細についてはドキュメントを参照してください。
ページの一部分をインデックスさせたくない状況がとっさには思い浮かばないのですが、とにかく Google 検索においては手段は提供されていません。
何が何でもというのであれば、そのコンテンツを JavaScript で生成して、その JS ファイルを robots.txt でブロックするとかでしょうか。iframe
を使う手もありそうですが、iframe
内のコンテンツであってもそのページのコンテンツとして Google は処理することがあるようなので信頼性に欠けます。
いずれにしても、小細工が必要です。
[H/T] 🍌John🍌