1. >
  2. >
  3. >

WordPressでSEOに強い(title/description)の設定コード紹介


WordPressでSEOに強いtitleとdescriptionの設定コードをご紹介致します。サーチコンソールでエラーを出さないことを心がけた弊社が普段よく使っている形式のコードになります。

以下のコードをheader.phpの<head></head>内に記載します。

01_上記コードを動かす為に必要な設定

Advanced custom Fieldsのインストール&有効化

まずひとつ目が以下のAdvanced Custom Fieldsのプラグインをインストールして有効化する必要があります。8行目、9行目辺りで使っている、「the_field」が以下のプラグイン固有のコードの為です。何故このプラグインを使っているかは後ほど説明致します。

0403_01

function.phpに以下のコードを追加

こちらは42行目にあるshow_page_numberを動かす為に必要な関数です。

02_(1)〜(7)の各項目について解説

最上部にあるtitle/descriptionの制御コードについてそれぞれ説明を行います。

(1)トップページについて

 

こちらはトップページの場合のtitleとdescriptionになります。「<php if(is_home()) ;?>」とありますが、これは「もしトップページだったら」という条件を宣言するphpの構文になります。

(2)single.phpについて

こちらは個別の記事ページの場合のtitleとdescriptionの制御コードです。

titleについて

こちらがはもしこの記事ページが「カスタムフィールド:titleの値を持っている場合(※A)」という条件分岐になり、存在する場合は、以下コードでカスタムフィールドの値を出力

存在しない場合は、

投稿のタイトルが自動で反映され” | “以降は決まり文句が入る、という設定になっています。

descriptionについて

同じく、もしこの記事ページが「カスタムフィールド:descriptionの値を持っている場合」は、以下コードでカスタムフィールドの値を出力

存在しない場合は、本文最初の120文字を抜粋してdescriptionに設定しています。以下にコードの解説を載せています。

本文の内容を取得して、

htmlのタグなどを削除して、

空白や改行をなくし、

最初の120文字(日本語対応)を取得。

最後に、取得した情報を出力しています。

(3)category.phpについて

こちらは前記事:カテゴリーページのSEOを強化する方法にそったコードになっています。「!is_paged()」は1ページ目の場合という条件分岐で、1ページ目はのタイトルは、

当該カテゴリー名の後に定型文が入る様になっています。そしてdescriptionは、

カテゴリーの[説明]の内容を出力しています。2ページ目以降は前記事の考え方で言うと、titleもdescriptionも不要ですが、ページが存在している以上論理的にtitleは必要になります。そこで、

上記コードで「○ページ目[カテゴリー名][定型文]」を出力してtitleの重複を防ぎます。

(4)固定ページについて

こちらはsingle.phpの場合と同じです。カスタムフィールドのtitleに内容があればそちらが優先されなければタイトルが自動でtitleに反映されます。descriptionも同様です。

(5)検索結果ページについて

特定の検索結果ページをインデックスさせたい場合は、より細かく制御し、検索結果ページをサイトマップに追加したりしますが、通常のホームページ運用においてはこちらのコードで十分です。

(6)404ページについて 

こちらは404ページの制御です。基本的にこの箇所のtitleはSEOに関わりません。その為descriptionの記載もありません。

(7)その他について

基本的にはこのコードは使われない想定です。想定外のページが出現した場合にtitleやdescriptionが空にならないような対処になっています。想定外のページについては、別途条件分岐をして都度正しいtitleとdescriptionの設定を行います。

03_この他にも作者別、月別アーカイブの設定をする場合があります

上記のコードで全てではなく、アーカイブのページの種類などによってもコードの量は変わってきます。あくまで最低限の内容が網羅されていると理解を頂ければ幸いです。ただし個々の記事ページや、カテゴリーページ(アーカイブページ)に関する基本的な考え方は同じです。


SEO対策 名古屋はAPOLLO11にお問合せ