SEOの具体的な施策は、以下の2つに分類できる。

内部対策

どんなに良質なコンテンツを作っても、Googleがそのコンテンツの価値を理解できなければ意味がない。

主に以下の対策をもって「マイナス要因の排除」を行う。

  • 主要なHTMLタグの最適化
  • URLの正規化
  • クローラビリティの促進
外部対策(コンテンツSEO)

ユーザーを理解し、ユーザーにとって有益なコンテンツを作成する。
加えて、「サイトの使いやすさ」や「ページの読み込み速度」などのユーザビリティにも配慮する。

主に以下の対策をもって「プラス要因の増幅」を行う。

  • キーワードの選定と評価
  • コンテンツ制作
  • ユーザー体験の向上

上位表示されるための条件

上位表示を目指すには「コンテンツ」「被リンク」「コーディング」の総合評価で競合を上回る必要がある。

この記事では、内部対策について解説する。

関連記事:SEOの基礎【外部対策(コンテンツSEO)】

HTMLタグの最適化

WebサイトのHTMLは以下のような構造で構成されている。

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>

title要素

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>
  • ページのタイトル
  • ここに設定したテキストが検索結果に表示される
  • ページの内容を端的に表す
  • 28文字以内に収める
    • 主要な検索エンジン(Google、Yahoo!、Bing)での最小表示文字数が28文字であるため
  • 対策キーワードを含める(2回まで)
  • ユニーク化する

パイプの使用方法

「|」(パイプ)を用いた、一般的な命名規則は以下の通りである。

「ページタイトル | サイトタイトル」

まれに、「|」の前後の文字が続き文字として認識される場合があるため、「|」の前後に半角スペースを入れることを推奨する。

また、「|」の使用は1ページ1つまでとする。

meta descriptionタグ

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>
  • 対策キーワードを含める(2回まで)
  • 100文字以内に収める
  • ユニーク化する

meta keywordsタグ

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>
  • 対策キーワードを含める
  • 多くても10個以下

hx要素

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>
  • 見出しの要素
  • 適切に使用することでユーザビリティを高める

h1~h3までの使用シーンは以下の通りである。

  • h1:大見出し(1ページに必ず1つ利用する)
  • h2:中見出し
  • h3:小見出し

h4以降は相当のコンテンツ量が無い限りは階層が複雑になるだけなので極力使用しないことを推奨する。

aタグ

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>
  • リンクを設置する適切なリンク設置でクローラビリティを高める
    • リンク切れなどの対応やURLの管理が行いやすいようにルートパスでの設定を推奨
  • 関連性、必然性がある場合に限る
  • アンカーテキストでリンク先を端的に表す(対策キーワードを含める)

imgタグ

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>
  • 画像を設置する適切に使用することでユーザビリティを高める
  • 画像サイズ(width,height)を必ず指定する

alt属性

  • 画像の代替となるテキスト情報
  • SEOへの貢献度は小さいが、アクセシビリティに影響する
  • 対策キーワードを含める
  • 画像の内容を適切に言語化する

ul・olタグ

<!DOCTYPE html>
 <html lang=“ja">

 <head>
      <meta charset="UTF-8">
      <title>ページタイトル | サイトタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content="クローラの制御表示">
 </head>

 <body>
  <h1>見出し1</h1>
    <a href="リンク先のパス">アンカーテキスト</a>
  <h2>見出し2</h2>
    <img src="https://techlabo.jp/wp-content/uploads/sample_img.png" alt="サンプル画像">
  <h3>見出し3</h3>
	  <ul>
	   <li>1つめの項目</li>
	   <li>2つめの項目</li>
	  </ul>
 </body>

 </html>

コンテンツの中で箇条書きを用いる際は、(改行)で表現するのではなく、ul・olタグを使用すること。

strongタグ

特定の「単語」を強調する場合に使用するが、以下の点に注意すること。

  • hxタグ内のテキストには使用しない
  • 過剰に使用しない(1ページあたり3個までが目安)
  • 同じ単語に繰り返し使用しない
  • 文章全体に使用しない(単語ではなく、文章や1文全体に適用しないこと)

URLの正規化

GoogleはURLが異なるページは同一のコンテンツでも別ページと判断する。

そのため、異なるURLで同一コンテンツがインデックスされてしまうと、ページの評価が分散し順位に影響が出てしまう。

wwwの有無
  • https://sample.co.jp
  • https://www.sample.co.jp
index.htmlの有無
  • https://sample.co.jp
  • https://sample.co.jp/index.html
/の有無
  • https://sample.co.jp
  • https://sample.co.jp/
パラメータの有無
  • https://sample.co.jp/
  • https://sample.co.jp/?p=1

このようなURLの記述違いによる重複インデックスを避けるため、検索エンジンが優先的にインデックスするべきURLをcanonical属性タグを利用して統一させておく必要がある。

canonicalタグ

<head>
      <meta charset="UTF-8">
      <title>ページタイトル</title>
      <meta name="description" content="ページの説明文">
      <meta name="keywords" content="ページのキーワード">
      <meta name="robots" content=“クローラの制御表示">
      <link rel="canonical" href="正規ページURL">
 </head>
<link rel="canonical" href=“正規ページURL"> 

をheadタグ内に記述する。(※正規ページURLは絶対パスで記述)

この記述により、canonical指定をしたURLを正規ページとしてインデックスするように検索エンジンに伝えることができる。

301リダイレクト

また、下記のような同一ページのURLのバリエーションは「301リダイレクト」を利用して正規化しておくことを推奨する。

  • index.htmlの有無
  • wwwの有無
  • URL末尾のスラッシュの有無

301リダイレクト(恒久的な転送)を行うことで、ブラウザのアドレスには統一したURLが表示されるため、他サイトから被リンクを張ってもらえる際にも正規URLが使われることになり、より間違いのないURL統一が図れる。

301リダイレクトの図

また、レスポンシブデザインに対応しておらず、PC版とモバイル版のURLが異なる場合もURLの正規化が必要である。

クローラビリティの促進

クローラビリティの促進は、ページのインデックスをより早く、より正確にするために重要であり、よくクロールされるサイトほどGoogleはそのサイトを重要であると判断している。

以下の施策を行うことでクローラビリティを促進する。

sitemap.xmlを設置

XMLサイトマップを作成し、Google サーチコンソール(Search Console)に登録することで、サイト内のページ構造やインデックスするべきページとその優先度などをGoogleに的確に伝え、インデックス漏れを防ぐ。

noindex処理(robots.txtの設定)

クロールさせる必要のない低品質なページ(HTMLサイトマップページ・404エラーページ、お問合せフォームページやサンクスページ)無駄なクロールをさせず、他の重要なページをクロールさせる手助けとなる。

パンくずリストの設置

ページの現在位置を上位階層から下層階層へ並べ、現在位置を確認できるようにすることで、

  • クローラビリティを促進し、階層の深いページへのアクセス数を増やす
  • 上層ページへの内部リンクが増え、特にトップページの価値を高める
  • ページタイトル(=対策キーワード)を使用したアンカーテキストを増やす

以上の3つのメリットが享受できる。
また、現在地点が目視で確認できる点で、ユーザビリティにも貢献する。

リンク階層について

リンク階層が深すぎると、クローラビリティが低下し、ユーザーにとってもわかりにくい=ユーザービリティが低いWebサイトとなってしまうため、トップページを第1階層として、第4階層までのリンク階層とするように配慮する。

また、トップページに内部リンクを集める=トップページに評価を集中させるという観点において、トップページからの下層ページへのリンクは必要最小限に抑えるべきである。

具体的には、トップページからは第2階層のみをリンクさせることで、トップページの評価分散を防ぐ。

関連記事:SEOの基礎【外部対策(コンテンツSEO)】