SEOの基本
はじめに
下記のページから、SEO対策の基本を掻い摘んでまとめているので純な情報は下記を見るのが良い。
Core Web Vitalsについては記載しない。
用語集
- インデックス: Google は認識したすべてのウェブページを「インデックス」に格納します。「インデックスに登録する」とは、Google があるページを取得し、そのページを読み込んで、インデックスに追加することを指す。
- クロール: ウェブページを検出するプロセス。Google は「リンクをたどる」「サイトマップを読み込む」など、さまざまな手段で URL を検出する。Google はウェブをクロールして新しいページを検出し、そのページをインデックスに登録する(例外あり)。
- クローラ: ウェブページを自動的にクロールして、ページをインデックスに登録するソフトウェア。 Google クローラは「Googlebot」と呼ばれる。
Googleのインデックスに登録されるようにする
Googlebot は、自動化されたクローラがウェブを常に探索し、インデックスに追加するサイトを探している。そのため、サイト運営者が手動でサイト情報を登録する必要はない。
検索結果に表示されるサイトのほとんどは、クローラがが自動的に追加したもののようだ。
インデックスに登録されているか確認する
site:
を付けて URL を検索する。
site: b.0218.jp
結果が表示された場合は、ページはインデックスに登録されている。
インデックスに登録されていない場合
よくある原因は下記の通り:
- サイトがウェブ上の他のサイトから十分にリンクされていない。
- 新しく立ち上げたばかりのサイトで、Google がまだクロールできていない。
- サイトのデザイン上の問題により、Google がコンテンツを効果的にクロールできない。
- Google がサイトをクロールしようとした際にエラーが発生した。
- サイトのポリシーによって Google によるサイトのクロールをブロックしている。
Google がコンテンツを見つけられるようにする
基本的にサイトはクローラによって自動的にインデックスへ追加されていくが、サイト運営者が手動でサイト情報を送信することもできる。
Google Search Console
Google Search Console は、Google 検索での状況を確認するためのツールを提供している。
状況確認だけではなく、サイトマップの送信やインデックスから削除を行うことも出来る。
サイトマップ
サイトの各ページが適切にリンクされていれば、Googlebot はページを検出することができるが、大規模なサイトや複雑なサイトのクロールを改善する手段としてサイトマップは有効である。
サイトマップが必要な場合:
- サイトのサイズが非常に大きい。その場合、新しいページや更新されたばかりのページの一部が Google のウェブクローラによるクロール対象から漏れることがあります。
- サイトにどこからもリンクされていない、または適切にリンクされていないコンテンツ ページのアーカイブが大量にある。サイトのページがうまく相互に参照されていない場合でも、サイトマップに含めることで Google がページの一部を見落とさないようにできます。
- サイトが新しく、外部からのリンクが少ない。ウェブクローラは、ページからページヘリンクをたどることによってウェブをクロールします。そのため、他のサイトからのリンクがないページは Google のクローラに検出されないことがあります。
サイトマップが必要でない場合:
- サイトのサイズが「小さい」。サイトのページ数がおよそ 500 ページ以下の場合にサイズが小さいと考えます。検索結果に表示する必要のあるページのみをこの合計ページ数に加算します。
- サイトはサイト内で完全にリンクされている。Google がホームページからリンクをたどって、サイト内の重要なページをすべて見つけられることを意味しています。
WIP
HTTPS でサイトを保護する
シンプルな URL 構造を維持する
Google に外部リンクの関係性を伝える
ブラウザの互換性
重複コンテンツの作成を避ける
リンクをクロールできるようにする
<a>
タグを使用する
適切な Google のクローラがたどれるリンクは、href 属性が指定された <a>
タグのみです。その他の形式のリンクはたどれません。href
タグなど、リンクとして実行されるタグが指定されていない <a>
リンクは、Google はたどることができません(スクリプトのイベントが原因)。以下に、Google がたどることができるリンクと、たどることができないリンクの例を示します。
たどることができるリンク:
<a href="https://example.com">
<a href="/relative/path/file">
たどることができないリンク:
<a routerLink="some/path">
<span href="https://example.com">
<a onclick="goto('https://example.com')">
解決可能な URL へのリンク
<a>
タグでリンクされている URL が、Googlebot がリクエストを送信できる実際のウェブアドレスであることを確認します。次に例を示します。
解決できる URL:
https://example.com/stuff
/products
/products.php?id=123
解決できない URL:
javascript:goTo('products')
javascript:window.location.href='/products'
#