今日、Google Search Consoleを利用してサイト分析していたときの話です。
Google Search Consoleの検索パフォーマンスでページ順位を見ていました。
そうすると、いくつかのページのURLに謎な文字列がくっついていました。
ふむ。どこかで見たことがあるけど、なんだか分からないぞ。
ということで、調べてみました。
では、今回の講義を始めます。
謎の”#toc”の謎
まずは、今記事の最大の謎である”#toc”から解説していきます。
“#toc”とは、Table of contentsの略で見出しという意味になります。
要は、目次から各見出しにリンクをするためのidで「ページ内リンク」のことです。
Google Search Consoleに出てくる”#toc”
Google Search Consoleでページの順位をチェックするときに、”#toc”が出てきても焦らないでください。
サイトリンクが表示されていただけです。
気になる方は、meta canonicalで正規化されたURLを追加しておく方が良いです。
URLフラグメントといって、別のページだと思われてインデックスされたら大変なので。
以上です。
と言いたいところなのですが、ここで終われない理由があります。
サイトリンクとは?
次に、サイトリンクです。
- が通常の検索結果です。
- がサイトリンクです。
この図を見てもらったらお分かりだと思いますが、検索結果の真下に表示されるので、他のサイトよりも一段と目立ちます。
さらに、ユーザのページ移動が楽になるので、目的のページへと足を運んでもらえやすくなります。
意図的なサイトリンクは出せるのか?
上記の画像を見てもらったら分かるのですが、通常の検索結果の真下にサイトリンクが表示されるため、SEO的にも効果が高いです。
とするならば、SEO対策を考えている人からすれば、自分の意図したリンクを出したいと考える人が非常に多いと思います。
では、意図的なサイトリンクは出せるのでしょか。
この問いの答えは、Googleが公式ページで回答をしています。引用してみましょう。
サイトリンクは、ユーザーの役に立つと Google が判断した場合のみ、検索結果に表示されます。
サイトリンク – Search Console ヘルプ
この公式回答を見る限りでは、不可能だと言えそうです。
Googleのアルゴリズムが有益なサイトリンクだと思ったものを自動生成し、ユーザの検索クエリに応じて、検索結果に表示していると判断ができます。
では、有益なものであれば必ず表示されるのか
この点に関しても、Googleが公式見解を出しています。
サイトの構造が原因で Google のアルゴリズムが適切なサイトリンクを見つけることができない場合や、サイトリンクとユーザーのクエリとに関連性がないと思われる場合、サイトリンクは表示されません。
サイトリンク – Search Console ヘルプ
HTMLは構造化プログラミング言語です。ここをきちんと認識する必要があります。
WEBサイトを運営している以上は、構造化プログラミング言語であるHTMLを使っていないわけないと思います。
つまり、サイト構造をきちんとしていないとHTMLを読んで理解する必要がある検索エンジンは理解ができないということになります。
その結果、サイトリンクを見つけることができずに検索結果に表示されないということになります。
サイトリンクを表示させるための対策
Googleの公式見解や様々なサイトを見る中で気付いた対策をここで一挙に公開していきたいと思います。
100%正解だなんて思っていないので、間違いなどのご指摘あればください。
ナビゲーション内にリンクを設ける
私が以前にやっていたサイトでもそうだったのですが、サイトリンクで最もよく表示がされているのが「ナビゲーションリンク」です。
フッターナビゲーションに設けていたサイトマップが表示されていたりとちょっと謎でした。
しかし、ここから分かることがあります。サイトリンクでよく表示されるのは「ナビゲーションリンク」です。
ナビゲーションのリンク対策をしっかりとしておくことが肝要です。
サイト構造を気を付ける
もう一度、Googleの公式見解を引用してみましょう。
サイトの構造が原因で Google のアルゴリズムが適切なサイトリンクを見つけることができない場合や、サイトリンクとユーザーのクエリとに関連性がないと思われる場合、サイトリンクは表示されません。
サイトリンク – Search Console ヘルプ
わざわざGoogleさんが言っていくれています。
サイトの構造をしっかりしましょうと。
例えば、
- 「これはナビゲーションリンクですよ」と分かりやすいコードを打つ
- 「これは目次リンクですよ」と分かりやすいコードを打つ
- 「これは各種ページへのリンクですよ」と分かりやすいコードを打つ
です。
たまにO型感丸出しの片付けていない部屋みたいなコードを打っている人がいますが、もう少しセクションごとを意識したりして綺麗なコードを打った方がいいと思います。
内部リンクの最適化
ここでもGoogleの公式見解を引用してみましょう。
サイトの内部リンクでは、簡潔に情報を伝え、繰り返しを避けたアンカー テキストと alt テキストを使用するようにします。
サイトリンク – Search Console ヘルプ
サイトリンクに表示されるリンクは内部リンクです。外部リンクではありません。
つまり、この内部リンクが最適化されていない状態(構造がぐちゃぐちゃな状態)では一切表示されない可能性があるということです。
HTML要素の最適化
この点に関しては、Googleの公式ページでは言及はありません。
しかし、HTML構造がぐちゃぐちゃな状態ではサイトリンクが生成されないということは言及されていました。ということは、HTMLの各要素も見直すことは当然だと思います。
例えば、
- meta要素の見直し
どうですか?meta descriptionは分かりやすい言葉で、理解がしやすい形で書かれていますか?そもそもきちんと書かれています? - タイトルの見直し
どうですか?タイトルはきちんと意味のある形にされていますか?
こういった基本的なことがとても大事になってきます。
きちんと対策をしておきましょう。
サイトリンクに表示されたくないページが出現
ここまでサイトリンクを表示させるためには、どうしたら良いのかを考えてきました。
次は、もし表示させたくないページがサイトリンクに出てきたら?というお話をしていきます。
「ナビゲーション内にリンクを設ける」でも言いましたが、私はサイトマップページを表示させるつもりは無いのに、サイトマップページが表示されていました。
なぜ、こんな現象が発生するのでしょうか?
理由は簡単でインデックスが可能なページからGoogleアルゴリズムがユーザに有益だと思ったページを自動でサイトリンクにするからです。
ここで気付いて欲しいのは、インデックスが可能なページがサイトリンクにされるということです。
ということは、サイトリンクに表示がされたくないのであれば、インデックスができないようにすれば良いわけです。
これを踏まえて対策を2点あげます。
- ページを削除する
- meta noindexを追加する
サイトマップページやプライバシーポリシーなどは削除するわけにはいかないと思うので、meta noindexを追加する方が良いと思います。
まとめ
サイトリンクを表示してもらうためには、Googleが言及している対策をすることが有効です。
当然といえば当然ですが。
では、Googleが言及していたことはたった1つでした。
『きちんと綺麗に構造化されたHTMLとし、その上でナビゲーションリンクを設ける」
これが最も有効な対策だということが分かりました。
以上となります。
サイトリンクを表示したい人は、早速対策を施してみてください。
今回の講義はこれで終わります。
では、またお会いしましょう!