[WordPress] 記事の更新日を表示する

  • このエントリーをはてなブックマークに追加
  • LINEで送る

小ネタです。
Wordpressで使っているテーマが記事の「公開日」だけしか表示してくれないので、「更新日」も表示するよう修正しました。

結論から言うと以下のようなコードをテーマに埋め込むだけです。

<span title="公開日">
  公開日:<time itemprop="datePublished" datetime="<?php the_time('c');?>"><?php the_time('Y-m-d');?></time>
</span>
<?php if( get_the_time('Ymd') !== get_the_modified_date('Ymd')){ ?>
  <span title="更新日">
    更新日:<time itemprop="dateModified" datetime="<?php the_modified_date('c');?>"><?php the_modified_date('Y-m-d'); ?></time>
  </span>
<?php } ?>
- Sponsored Link -

修正結果

「公開日」と「更新日」が異なる場合は以下のように両方表示するようになります。

「公開日」と「更新日」が同じ場合は「公開日」だけを表示します。

解説

WordPressで公開日と更新日を取得する

それぞれ次の関数が用意されており、テーマ内から利用できます。

公開日
表示する場合はthe_time()、処理に利用する場合(戻り値として欲しい場合)はget_the_time()
更新日
表示する場合はthe_modified_date()、処理に利用する場合(戻り値として欲しい場合)はget_the_modified_date()

引数はPHPのdate関数と同じようです。

検索エンジン対策

今回の目的は人間に対する情報を増やすというものですが、Google先生の検索結果に更新日を出したかったというのがあります。現在は以下のように公開日だけが表示されていますが、更新したらそっちの日付を出して欲しいじゃないですかw

というわけでdatePublishedで公開日、dateModifiedで修正日をそれぞれ指定しています。AMPページの場合は構造化データとして用意してあげるのが良いみたいですが、このブログは基本PC向けなので今回はこれで様子を見ることにしました。

<time itemprop="datePublished" datetime="<?php the_time('c');?>"><?php the_time('Y-m-d');?>
<time itemprop="dateModified" datetime="<?php the_modified_date('c');?>"><?php the_modified_date('Y-m-d'); ?></time>

採用されるとは限らない

Googleの中の人いわく、これらの情報を表示したとしてもGoogleが公開日と更新日のどちらの日付を採用するかはアルゴリズムによって自動的に決定されるため、コントロールすることは出来ないそうです。

検索結果で表示させたい日付けをGoogleに直接伝える方法はない。
(中略)
しかし、アルゴリズムで自動的に処理する方を選んだ。最終更新日から取得するページもあれば、最初の公開日を取得するページもある。どの日付けを表示するのが最も適切かをアルゴリズムが判断する。
※「海外SEO情報ブログ」より

とは言え、やらないよりはやっておいた方が良いですよね。うまく機能してくれれば儲けものくらいの気持ちが良さそうです。

参考ページ

このブログを応援する

お寄せいただいたお気持ちは全額サーバ代や次の記事を執筆するための原資として活用させていただいております。この記事が参考になった場合などぜひご検討ください。

PayPal(ペイパル)
PayPalで300円支払う
※金額は任意で変更できます。
※100円でも泣いて喜びますw
※住所の入力欄が現れた場合は「no needed」を選択ください
これまでのご協力者さま
- Sponsored Link -

ご質問やリクエストなどお気軽に。メールアドレスの入力は任意です。書き込みが反映されるまで時間がかかります。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください