ワードプレス ブログ記事の”SEOな”最終更新日タグの作り方

modified-date

ホームページを検索上位表示させるためには、検索エンジンに最適化:SEOする事 が重要ポイントです。

コンテンツ、つまりサイト内の情報  の新鮮さを保つこともそのSEO施策のひとつです。

検索エンジンはページ内からデータを収集し、最終更新日も記載されていれば取得しますが、他方で

  • ブログ記事の情報を刷新・リライト
  • 場合によっては削除する
  • または、より有益な情報が記載されているページへのリンクを記載する

など、コンテンツに定期的に手を入れることで情報が古くならないようにする事が大切です。

検索ユーザーにとっても記事上の公開日、最終更新日の記載は、そのコンテンツの新しさや更新の情報を知らせるものでもあるので、コンテンツの有用性や信頼性を確認する上で重要なものです。

WordPressの場合、リライトしたら自動的に最終更新日の表示をさせるように設定をすればOKですが、どうせ設定するのであれば、好ましいタグで設定しておきたいものです。

投稿に公開日のないテーマは無いと思いますので、ここでは、記事タイトル下などに表示される公開日の横に更新日を記載する方法についてまとめてみました。

最終更新日時を表示させる、the_modified_time/the_modified_date 関数

WordPressには、最終更新日を表示させる関数、the_modified_date 関数があります。
the_modified_time は時間まで表示できますが、今回は日付にフォーカスしていきます。

では、まず、この関数についてWordPressの「テンプレートタグ/the modified date」のページを見てみましょう。

テンプレートタグ/the modified date最終更新日関数のページ

このページから、最終更新日を表示させたいところに、


最終更新日: <?php the_modified_date(); ?>

と記述すればよいことがわかります。簡単ですね(^^)

()の中に何も引数を入れなければ、一般設定画面で設定した日付のフォーマット:表示形式で表示されます。

日付のフォーマットをここだけ変更したい、という場合は引数を()内に記述すればOKです。

日付のフォーマットを変更するには

まずは、下記リンクから、WordPressのCodexで日付や時刻の書式を決める、関数の引数を見てみましょう。

日付と時刻の書式
日付と時刻の書式のページイメージ

つまり、例えば、

最終更新日:2015/11/8(日)

と表示させたかったら、()内に引数を追記して、以下の様にすれば良いということになります。

最終更新日: <?php the_modified_date("Y/n/j(D)"); ?>

公開日=最終更新日の場合は、最終更新日を表示させない

最終更新日の書き方はわかりましたが、公開したばかりで更新していない記事の場合、公開日と最終更新日を並べて表示させるようにすると、同じ日付が並んでいる状態になってしまいますね。

こういった時には、以下の様に、get_the_modified_date()関数を使います。
get_the_modified_date関数用例

例えば、更新が無い場合には、何も表示させず、更新がある場合にのみ、

    最終更新日:2015/11/8(日)

と表示させたければ、

<?php if ( get_the_date( ) != get_the_modified_time( ) ): ?>
最終更新日: <?php the_modified_date("Y/n/j(D)"); ?>
<?php endif; ?>

とすれば、OK。

公開日の前後に最終更新日を表示させるのであれば、公開日の前後に上のコードをコピペし、()内をお好みの引数に変更すればOKです。

ISO 8601 の書式データとtimeタグで、検索エンジンにもわかりやすくする

人にわかりやすい書式があるように、検索エンジンにとってわかりやすい日付の書式が、ISO 8601です。

timeタグ内にISO 8601での日付を追加することで、検索エンジンが正しく日付を理解できるようにしてみましょう。

まず、お手本として、例を見てみましょう。
※読みやすい様に改行していますが必ずしも改行する必要はありません。

<time datetime="2015-11-07T16:28:58+00:00">
公開日:2015年11月7日
</time>

<time datetime="2015-11-09T14:22:11+00:00">
最終更新日:2015年11月09日
</time>
  • time は、検索エンジンやブラウザに日時を示していることを理解させるためのHTMLタグです。
  • datetime は、timeの属性で、タグ内に日時を記述するのに必要なものです。
    datetimeでの日時の記述が無い場合は、〈time〉~〈/time〉の~の部分に決められた書式での記述が必要になります。

timeの詳細がわかりやすいタグリファレンスの記事ページへのリンクを張っておきますので、参考にしてみて下さい。

時刻や日付を表す〈time〉〈/time〉timeタグリファレンス

datetime では決められた正確な日時での書式が求められますが、それがISO 8601 です。

前述のWordPress Codex の日付と時刻の書式のページにISO 8601で表示させたい場合の引数を見てみると、

日付と時刻の書式 ISO8601

となっており、具体的に書くとすると、

the_date(c)

とすれば良いことがわかります。

これらを踏まえて、先ほどの条件分岐と合わせると、

<?php if ( get_the_date( ) != get_the_modified_time( ) ): ?>
<time datatime="<?php the_modified_date(c); ?>">最終更新日: <?php the_modified_date("Y/n/j(D)"); ?></time>
<?php endif; ?>

となります。

後はお好みでCSSなどで見やすくしていただければ良いと思います。

さて、最終更新日だけでなく、schema.orgのマークアップをすることで、検索エンジンにとってよりわかりやすい形でデータを知らせる方法については以下の2つの記事、

リッチスニペット施策schemaのmicrodataをWordPressブログに設定

WordPressブログ記事用schema.org JSON-LDをPHPで書いてみた

で書いていますので、こちらも参考にしていただければと思います。

ではでは、今日はこの辺で。

「ワードプレス ブログ記事の”SEOな”最終更新日タグの作り方」の巻でした(^^)

お役に立ったら、ボタンをクリックしていただけるとうれしいです♪

Published:2015/11/09

Written by

コメントを残す