オンラインでコンテンツを公開する際、ブログ記事やページ、メディアが正確かつ最新のものであることを訪問者に示すことが大切です。

WordPressのブログ記事や固定ページで、アイキャッチ画像やタイトル、記事の上部/下部などに最終更新日を明記するのは、コンテンツの鮮度をアピールする方法の1つ。

これによって、訪問者は記事の公開日とともに最終更新日を確認することができるようになります。あるいは、最終更新日に合わせて公開日を変更してしまうのもありです。

表示される日付を更新することで、そのコンテンツが古い状態(リンク切れ、不確かな情報、古い画像など)で放置されることなく、鮮度を示すことができ、ブログ読者(および検索エンジン)に好印象を与えます。

最終更新日を表示する方法について、動画での解説もご用意しています。

公開日と最終更新日の表示場所

テーマのスタイルによって、公開日は投稿、固定ページ、またはその両方に表示されます。表示場所は、タイトルのすぐ下か、本文開始前が一般的で、作者名が入ることもよくあります。

古い投稿の公開日例
古い投稿の公開日の例

とは言え、公開日のスタイルや表示場所は、テーマによって様々です。例えば、以下のテーマのように、アイキャッチ画像の上にカレンダーのアイコンと一緒に表示されることもあります。

公開日や最終更新日が投稿の最後に表示されることも
公開日や最終更新日が投稿の最後に表示されることも

テーマによっては、投稿の最後にあるコメントボックスの直前に公開日や最終更新日が表示されるものもあります。

公開日や最終更新日が投稿の最後に表示されることも
公開日や最終更新日が投稿の最後に表示されることも

バックエンドでは、「投稿一覧」の「日時」列から公開日を確認することができます。

投稿一覧の日時列で公開日を確認
投稿一覧の日時列で公開日を確認

また、投稿エディターでも確認できます。

投稿の編集時にも公開日を確認できる
投稿の編集時にも公開日を確認できる

今回の記事では、公開日だけでなく、最終更新日の日付も表示すべき理由をご紹介します。また、最終更新日を表示する様々な方法、ウェブサイトの最終更新日を確認する方法も扱います。

それでは、早速見ていきましょう。

最終更新日を表示するメリット

コンテンツを定期的に更新して、最終更新日を表示することには、サイト所有者、検索エンジン利用者、そしてサイト訪問者にとって、さまざまなメリットがあります。また、コンテンツの鮮度や関連性が検索エンジンの表示順位に影響を与える要素であることを考えれば、SEOの観点からも効果的です。

固定ページや投稿に最終更新日を表示するメリットは、以下の通り。

  • 最新の日付は公開日よりも正確。しばらく前に公開されたものと比較して、内容が新しいものであることを示すことができます。
  • 読者は更新情報に気付くもの(古い記事は見ない)。したがって、クリックスルー率(CTR)やユーザーの閲覧時間を向上できる可能性があります。
  • 最終更新日を表示することでユーザーの目に留まりやすくなる。検索エンジンには、公開日や最終更新日が表示されるため、他のサイトと並んで表示された際に、より新しい日付でユーザーの注意を引くことができます。
  • 最終更新日は、検索エンジンがコンテンツの鮮度を判断する指標の1つ検索エンジンはコンテンツをクロールしていますが、これが常に行われているわけではありません。最終更新日の表示によって、サイトが更新されていることを強調することができます。
  • 新しい日付であるほど、コンテンツの問題を解決済みという信頼感を与えられるリンク切れや画像の破損、事実と異なる情報などに対処することができます。
  • コンテンツ(と日付)を更新すると、検索エンジンがより頻繁にサイトをインデックスする傾向がある。 厳密なルールではありませんが、検索エンジンは常に更新されているコンテンツを持つサイトを頻繁にクロールすると言われています。
  • 記事の更新によってサイト全体が恩恵を受け、 全体的な検索エンジンの表示順位が上がる可能性が高まる
  • 最終更新日を表示することで自分へのコンテンツ更新の視覚的なリマインダーに。古い日付が目に留まり、更新の必要性に気づきやすくなります。
  • あるトピックについて新たな情報を紹介する場合、検索エンジンの観点では、新しい記事を投稿するよりも古い記事を更新する方が評価される。コンテンツの重複を防ぎ、最新の日付を表示することで、SEO(検索エンジン最適化)の面でプラスの効果があります
  • 一部の媒体(ニュースサイトなど)では最終更新日の表示が必要。ユーザーが更新を見逃さないようにするため、訂正や新たな情報を含むコンテンツは、最終更新日に基づき、サイトフィードの最上部に表示されます。

WordPressサイトで最終更新日を表示する方法

WordPressのデフォルトでは、新規投稿や更新された投稿に最終更新日は表示されません。また、公開日は表示されますが、その後何度更新しても、公開日はそのまま表示され続けます。

最近のテーマには、数回クリックするだけで最終更新日を表示できる機能が組み込まれているものがあります。そのため、まずはWordPressのカスタマイザーを使用して、テーマの日付設定を確認するのが得策です。しかし、この機能がないテーマももちろん存在しています。

WordPressカスタマイザーで、最終更新日を表示を設定できない場合は、以下の方法があります。

  1. functions.phpファイルやCSSを編集する
  2. テーマのテンプレートを編集する
  3. プラグインを使用する

最初の2つの方法は、サイトのテーマファイルにアクセスする必要があります。過去にこの操作を行ったことがない方は、WordPressのテンプレート階層に関する記事をご覧ください。

以下、3つの方法を、それぞれご説明していきます。お好きな方法で設定してみてください。

方法1. テーマのfunctions.phpとCSSを編集する

WordPressサイトで最終更新日を表示する1つ目の方法は、テーマのfunctions.phpファイルにアクセスして、コードを貼り付けるものです。尚、子テーマやサイト固有のプラグインに同じコードを貼り付けることで、テーマを切り替えたり更新したりする際に、コードが消えてしまうという問題を回避できます。

いずれの場合も、同じタイプのCSSコードを使用するため、貼り付けるコードとfunctions.phpファイルにそれを配置する方法をご紹介します(子テーマやサイト固有のプラグインの場合も、同じコードを利用します)。

まずは、テーマのfunctions.phpファイルを開きます。最も簡単なのは、FTPクライアントを使ってSFTP接続する方法です。FTPクライアントで、/www (またはサイト名)> /public > /wp-content > /themes > /theme-name (この記事では/twentytwentyone )に進むと、functions.phpファイルにたどり着きます。

functions.phpファイルを開く
functions.phpファイルを開く

テキストエディタ、またはMarkdownエディタでファイルを開き、以下のコードを貼り付けてください(子テーマ、サイト固有のプラグインの場合も同様)。

function show_last_updated( $content ) {
  $u_time = get_the_time('U');
  $u_modified_time = get_the_modified_time('U');
  if ($u_modified_time >= $u_time + 86400) {
    $updated_date = get_the_modified_time('F jS, Y');
    $updated_time = get_the_modified_time('h:i a');
    $custom_content .= '<p class="last-updated-date">Recently updated on '. $updated_date . ' at '. $updated_time .'</p>';
  }
  $custom_content .= $content;
  return $custom_content;
}
add_filter( 'the_content', 'show_last_updated' );

貼り付けた後、ファイルを保存して、サーバーにアップロードしてください。すると、最終更新日が投稿本文の直前に表示されるようになります。また、このコードは、公開日と最終更新日が一致するかどうかの検証も行います。

一致する場合は、公開日のみ表示されますが、異なる場合は、公開日と一緒に最終更新日も表示されるようになります。

フロントエンドから見た最終更新日の表示例
フロントエンドから見た最終更新日の表示例

最終更新日の表示スタイルを変更する方法

先ほど貼り付けたfunctions.phpのPHPコードは、非常にシンプルなものです。テーマの雰囲気とかけ離れている場合には、CSSコードを追加して見た目を編集することができます。サンプルコードは以下の通りです。必要に応じて、活用してください。

.last-updated-date {
  font-size: large;
  font-family: monospace;
  text-transform: uppercase;
  color: white;
  background-color: black;
}

なお、ここではfunctions.phpに追加したPHPコードに対応するようにlast-updated-dateクラスを使用しています。 クラス名は実際には何でも構いませんが、CSSコードと必ず一致するようにしてください。

注意)これはあくまで一例です。CSSのプロパティや値は、必要に応じて変更することができます。

WordPress管理画面の「外観」>「カスタマイズ」>「追加CSS」で、CSSコードをフィールドに貼り付けます。これで、1つの固定ページや投稿だけでなく、サイト全体でCSSを有効にすることができます。

CSSコードを追加してスタイルを変更
CSSコードを追加してスタイルを変更

CSSコードを公開すると、フロントエンドのすべての最終更新日に変更が反映されます。以下のスクリーンショットは、背景色、フォント色、フォントファミリー、フォントサイズを変更し、さらにすべてを大文字に変更した例です。

 

CSSコード公開後のフロントエンド表示例
CSSコード適用後のフロントエンド表示例

ページやその他の投稿ではないコンテンツから最終更新日を削除する方法

サイト全体に変更が反映されてしまうと、不都合が生じることも。例えば、トップページ、商品ページ、会社概要、ショッピングカートなどでは、最終更新日を表示する必要はありません。

例えば、以下のプライバシーポリシーページには、最終更新日が表示されていますが、このページにアクセスしたユーザーにとっては、不要な情報かもしれません(そもそも、このテーマでは公開日が非表示です)。

プライバシーポリシーなどのページに最終更新日の表示は不要
プライバシーポリシーなどのページにおける最終更新日の表示

これは、一般的にテーマが原因です。WordPressテーマによっては、最終更新日や公開日が自動で削除されるものもありますが、そうでないものも。その場合は、先ほど実装したPHPコードに簡単な変更を加えましょう。

テーマのfunctions.phpファイルに戻り、86400)の間に次を貼り付けてください。

&& is_singular('post')

以下のようになります。

function show_last_updated( $content ) {
  $u_time = get_the_time('U');
  $u_modified_time = get_the_modified_time('U');
  if ($u_modified_time >= $u_time + 86400 && is_singular('post')) {
    $updated_date = get_the_modified_time('F jS, Y');
    $updated_time = get_the_modified_time('h:i a');
    $custom_content .= '<p class="last-updated-date">Recently updated on '. $updated_date . ' at '. $updated_time .'</p>';
  }
  $custom_content .= $content;
  return $custom_content;
}
add_filter( 'the_content', 'show_last_updated' );

これで、WordPressの投稿タイプで投稿でないもの(固定ページや商品ページなど)では、最終更新日が非表示になります。

投稿以外のページでは最終更新日が非表示に
投稿以外のページで最終更新日が非表示に

公開日を非表示にして最終更新日だけを表示する

最終更新日を表示するコードを実装しても、公開日が残ってしまうのはよくあるパターンです。テーマによっては非表示になるものもありますが、あまり一般的ではありません。懸念点は、投稿に公開日と最終更新日の両方が表示されてしまうことです。

場合によっては許容できるかもしれませんが、日付が2つ表示されると紛らわしくなる可能性が高いです。公開日は非表示にして、最終更新日だけを表示するというのが理想的です。

プラグインを使って実現する方法もありますが、CSSの簡単な編集で実行できます。また、日付の非表示のためだけにプラグインをインストールすることはお勧めできません。

公開日を削除して最終更新日(上記手順で設定したもの)を残すには、WordPress管理画面で、「外観」>「カスタマイズ」>「追加CSS」に進みます。
以下のコードを「追加CSS」フィールドに貼り付けてください。

.entry-date {
  display: none !important;
}

公開」ボタンをクリックして、変更を公開します。

カスタマイザーでCSSコードを追加
カスタマイザーでCSSコードを追加

これで、公開日が非表示になり、最終更新日だけが表示されるようになります。

公開日が非表示になり、最終更新日だけが表示される
公開日が非表示になり、最終更新日だけが表示される

なお、.entry-dateCSSクラス名は、幅広いテーマで使用できますが、必ずしもすべてのテーマで利用されているわけではありません。つまり、このコードが機能しない場合は、そのテーマで.entry-date以外のクラス名が使われている確率が高いです。

とは言え、このCSSコード自体は活用できます。テーマが公開日に使っているクラス名を調べてみてください。ブログ記事のフロントエンドに移動して、表示されている公開日の上で右クリックします。Chromeの場合は「検証」、Firefoxの場合は「要素を調査」、Safariの場合はOptionキー + Cを押してください。

公開日を右クリックして検証
公開日を右クリックして検証

すると、ブラウザのデベロッパーツールが表示され、現在のページのコーディング要素、特にクリックしたページ要素のCSSコードを確認することができます。

公開日の上で右クリックした場合は、メイン要素として表示されるはずですが、そうでない場合は、<time class=のセクションを検索してください。公開日のCSSクラスはその直後に表示されます。今回はentry-dateになっていますが、post-dateposts-datepublished-dateなど、さまざまなバリエーションが使用されることがあります。

「time class=」のスニペットと、その後にある情報を確認
「time class=」のスニペットと、その後にある情報を確認

クラス名だけをコピーします(引用符など、その他の要素は不要です)。
これを以下のCSSスニペットに貼り付け、yourthemes-class-nameを置き換えてください。また、クラス名の前にピリオドがあることを確認します。

.yourthemes-class-name {
  display: none;
}

これで完了です。

手っ取り早く公開日を非表示にする方法(一部のテーマのみ)

最終更新日を残して、手っ取り早く公開日だけを非表示にする方法として、WordPressの「一般設定」から公開日の書式を削除することもできます。

管理画面の「設定」>「一般」で、「日付形式」と「時刻形式」セクションまでスクロールします。両方とも「カスタム」を選択し、フィールド内の情報を削除します。その後、「変更を保存」ボタンをクリックします。

カスタムに設定してフィールド内を削除
「カスタム」に設定してフィールド内を削除

すると、ブログ記事(あるいはどの投稿タイプでも)の公開日が非表示になります。そして、先ほどご紹介したfunctions.phpファイルに最終更新日を表示するコードを実装していれば、最終更新日は表示されたままになります。

公開日が非表示になり、最終更新日だけが表示される
公開日が非表示になり、最終更新日だけが表示される

方法2. テーマのテンプレートを編集する

テーマは通常、各種情報を表示するためにさまざまなテンプレートで構成されています。ほとんどの場合、投稿のメタデータ(公開日など)の表示場所や見た目は、テーマのテンプレートで定義されます。

というわけで、投稿の日時をフロントエンドに表示するテンプレート(およびテンプレート内のコード)を見つける必要があります。実際のテンプレートは開発者によって異なりますが、以下のいずれかに記述されているのが一般的です。

  • index.php
  • page.php
  • single.php
  • archive.php
  • content.php
  • template-tags.php
  • template-functions.php
  • /incフォルダ内のPHPファイル
  • /postフォルダ内のPHPファイル
  • /contentフォルダ内のPHPファイル
  • /excerptフォルダ内のファイル
  • /template-partsフォルダ内のファイル

こればかりは開発者の裁量(とスタイル)によるため、特定には手間がかかりますが、テーマのファイル内を調べて、該当するコードを見つけましょう。なお、該当のファイルは、上記で挙げた名前でない可能性もあります。

以下の方法で、効率的にテーマファイルを探すことができます。

  • テーマ開発者に直接連絡して、公開日の表示についての情報が含まれるテンプレートを確認する。また、オンラインやテーマのユーザーフォーラムで検索してみるのもありです。
  • 最も一般的なテーマテンプレートから確認してみる。シンプルなテーマであれば、index.phppage.phpsingle.phpから始めるのがおすすめですが、最近のテーマでは、/template-parts/excerpts/incのようなファイルであることが多いです。
  • FTPクライアントの検索機能を使って、postedtimedateget_the_timeget_the_dateのようなテキストのインスタンスを探す。

今回の例では、Twenty Twenty-Oneテーマを使用していますが、公開日のコードはtemplate-tags.phpファイルにあり、テーマ開発者間での統一があまり行われていないことがわかります。

このファイル内の公開日の指標として、以下のような要素が挙げられます。

  • <time class=
  • get_the_dateコード
  • 「Published(公開日)」の文字
公開日表示のコードを見つける手がかりとなる要素
公開日表示に関連するコードを見つける手がかり

このような要素を見つけたら、次は、コードの中で最終更新日を表示したい場所を決めます。基本的には、すでに公開されている日付(公開日)の前後にコードを貼り付けるのがベストです。

以下のコードをコピーして、任意の場所に貼り付けてください。

$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400) {
  echo "<p>Last Updated on ";
  the_modified_time('F jS, Y');
  echo " at ";
  the_modified_time();
  echo "</p> ";
}
テンプレートファイルにコードを貼り付ける
テンプレートファイルにコードを貼り付ける

テンプレートファイル編集の際、フォルダ探しに少し時間がかかるかもしれませんが、最終更新日は複数箇所に表示されるようになるため、その後は比較的スムーズに進められるはずです。

その複数箇所の1つが、投稿用のコードを挿入した場所です。今回の例では、投稿の一番下、公開日のすぐ上に最終更新日の文字と日付が表示されています。

各記事に最終更新日が表示されるように
各記事に最終更新日が表示されるように

テーマのテンプレートを変更すると、すべての投稿が一覧で表示されるブログのトップページとアーカイブページにも最終更新日が表示されます。つまり、更新するたびにその日付が表示され、サイト訪問者がコンテンツの新鮮さを認識しやすくなります。

ブログ/アーカイブページにも最終更新日が表示される
ブログ/アーカイブページにも最終更新日が表示される

最終更新日の表示場所を変更する

テーマのテンプレートの中身によって、日付の表示方法だけでなく、投稿のどこに表示されるかも決まります。

これもまたテーマとそのテンプレート構造によって異なり、公開日と最終更新日が投稿の上部や、タイトルの下に表示されるものもあれば、執筆者プロフィールの前や、サイドバーのような変わった場所に表示されるパターンもあります。

したがって、テーマのテンプレートから最終更新日や公開日の表示場所を調整するのがおすすめです。方法2で挿入したコードを、同じPHPファイル内の別の場所に移動するだけで実行できることもあります。

また、そのPHPファイルがテンプレートパーツの一つであり、メインのテンプレートによる参照を通して、投稿のフォーマットが定義されていることもあります。

先ほどのTwenty Twenty-Oneの例で言えば、template-tags.phpファイルは結局のところ、投稿を司るマスターファイルの一部に過ぎません。したがって、どのテンプレートが投稿のフォーマットを処理しているか、テーマ開発者に直接確認するか、自分で把握しなければなりません。

すべてのテーマに該当するとは限りませんが、single.phpcontent-single.phppost.phpといった名前のメインのテーマテンプレートを調べてみるのがおすすめです。

Twenty Twenty-Oneテーマの場合、single.phpがメインのテンプレートファイルとして機能しています。content-single.phpは言うなれば、これに参照されるテンプレートパーツです。この状況を加味すると、single.phpまたはcontent-single.phpに最終更新日のコードを挿入できます。

content-single.phpファイル、または日付表示するコードを含むテンプレートパーツのファイルを開く
content-single.php(またはその他の、日付を表示するコードを含むファイル)を開く

最終更新日の表示場所を変更するには、方法2で取り上げたコードを任意の場所に動かします。以下のように、ファイルにはheaderセクションと、the_contentスニペットがあります。最終更新日のコードをこの2つの間に挿入して、表示場所をデフォルトの投稿下部から投稿本文の上に移動します。

コードを適切な位置に移動
コードを好みの位置に移動する

すると、フロントエンドでは、以下のように最終更新日が投稿本文の上に表示されます。デフォルトの場所に表示される日付は、非表示にすることも、残しておくことも可能です。

最終更新日が投稿本文の上に表示されるように
最終更新日が投稿本文の上に表示されるように

WordPressテーマ「Astra」で最終更新日を表示する方法

テーマによって、テーマテンプレートの使い方(と名前)は異なりますが、豊富なデザインの選択肢と速度が売りの人気テーマである、Astra、Neve、Zakraを例に、最終更新日の表示方法を見ていきましょう。

1つ目のAstraは、無料のスターターテンプレートが豊富に用意されている多目的テーマです。このスターターテンプレートはそれぞれ、テーマテンプレートディレクトリに新しいファイルを追加しますが、基本的な構造は同じままです。この解説では、スターターテンプレートをインストールして、各投稿のトップに最終更新日を表示したいと思います。

テーマの基本動作について説明すると、Astra(+Travel Blogスターターテンプレート)では公開日さえ表示されません。そんな仕様ではありますが、最終更新日を表示することは可能です。この記事の方法1を使用して日付を挿入するには、FTPクライアントで/wp-content > /themes > /astraに移動し、functions.phpファイルを開きます。

Open functions.php
functions.phpを開く

ファイルの最後に方法1のコードを貼り付け保存します。すると、ブログ記事のトップに最終更新日が表示されるようになります。

A frontend view of the last updated date in Astra
Astraの最終更新日をフロントエンドで確認

方法2を使うことも可能です。single-layout.phpというテンプレートに移動します。/astra > /template-parts > /singleにあります。

Open the single-layout.php file
single-layout.phpファイルを開く

使用するのは同じコードですが、テーマのテンプレートによっては「PHPコードを使用している」ことを明確にする必要があります。そのため、フロントエンドに(レンダリングされた日付ではなく)コードが表示された場合には、コードの周りにブラケットを記述してください。

具体的には、以下のようになります。

<?php
function show_last_updated( $content ) {
  $u_time = get_the_time('U');
  $u_modified_time = get_the_modified_time('U');
  if ($u_modified_time >= $u_time + 86400) {
    $updated_date = get_the_modified_time('F jS, Y');
    $updated_time = get_the_modified_time('h:i a');
    $custom_content .= '<p class="last-updated-date">Recently updated on '. $updated_date . ' at '. $updated_time .'</p>';
  }
  $custom_content .= $content;
  return $custom_content;
}
add_filter( 'the_content', 'show_last_updated' );

これを、the_contentを含む箇所のすぐ上に貼り付けてください。

Insert code into single-layout.php
single-layout.phpにコードを挿入する

その後ファイルを保存して、サーバーにアップロードすると、Astraで投稿本文の前に最終更新日が表示されるようになります。

Last updated date result on the frontend of Astra
Astraのフロントエンドで最終更新日の表示を確認

このように、Astraのフロントエンドで最終更新日の表示を確認できます。

WordPressテーマ「Neve」で最終更新日を表示する方法

Neveは、言うなれば「コード記述前にWordPressカスタマイザーを確認すること」の重要性を体現したテーマです。テーマごとにカスタマイザーにある設定項目は違います。中には、最終更新日の表示を設定できるものも。Neveはまさにそんなテーマです。

この設定を行うには「外観」>「カスタマイズ」>「レイアウト」>「ブログ/アーカイブ」と進みます。「投稿メタ」のドロップダウンをクリックします。「メタ情報の順序」に「日付」が表示されていることを確認し、「公開された日付の代わりに最終更新日を使用します」のトグルをクリックしてオンにします。

これで、ブログページと各個別記事に最新の日付が表示されるようになります。

Neve makes it easy with a Customizer setting
Neveの「カスタマイズ」画面で簡単に設定できる

WordPressテーマ「Zakra」で最終更新日を表示する方法

Zakraはもう少し複雑です。公開の日付に関するコードを探すとなると、WordPressファイルの中でも/template-partsフォルダが真っ先に思い当たるかもしれませんが、正しくは/incフォルダです。

Zakraで最終更新日を表示するには、FTPクライアントで接続し、サイトの/themesフォルダに移動します。そして、/zakra > /inc > template-tags.phpを開いて編集してください。

Open the template-tags.php file
template-tags.phpファイルを開く

);get_the_time関数のもの)と$posted_on = sprintf(の間に、前に説明したコードを貼り付け保存します。

Paste the code inside the Zakra theme template
Zakraのテンプレート内にコードを貼り付ける

これで、Zakraを使用したサイトのすべての投稿で日付が表示されます。

The last updated date on the frontend of Zakra
Zakraのフロントエンドで最終更新日が表示されていることを確認

テーマデザインの編集がうまくいかない場合

この記事でお気づきかもしれませんが、どのテーマにも独自のスタイル、CSSコード、PHPがあります。そのため、今回紹介したコードに対して、各テーマがどのような反応を示すかはまちまちです。また、多くのテーマで、スタイルが設定されていたり、最終更新日が表示されていたりして、その場合には調整不要です。

いずれにせよ、最終更新日の表示に関する問題の多くは、テーマファイルのハードコーディングや、ファイル内にある何らかの独自性に起因します。したがって、問題が発生した時には、テーマ開発者に連絡し助けを求めるのが一番確実です。特定の状況に即したCSSやPHPコードの記述を助けてもらえる可能性があります。

方法3. プラグインを使用する

プラグインを使用する前に、上記のいずれかの方法を試してみることをお勧めします。というのも、プラグインを追加するたびに、パフォーマンスやセキュリティの問題が発生する可能性が高まるからです。今回の変更は小さなものなので、functions.phpファイルやテーマのテンプレートを編集するだけでOKであれば、プラグインは追加しない方がよいでしょう。

とはいえ、上記の方法がどれもうまくいかない、あるいは思い通りに機能しない場合には、WP Last Modified Infoというプラグインが利用できます。

このプラグインを使うと、最終更新日の追加、構成の変更(公開日の置き換えなど)、表示され方の調整などが行えます。

The WP Last Modified Info plugin
WP Last Modified Info

有効化したら、WordPress管理画面で「設定」>「WP Last Modified Info」に進みます。「Posts」のタブで「Show Info on Frontend」をクリックしてオンにします。

Enable for Posts and Pages on the frontend
「Show Info on Frontend」をクリック

また、以下のように表示する場所も変更できます。

  • Before content(コンテンツの前)
  • After content(コンテンツの後)
  • Replace published date(公開日を置き換える)
  • Manual (using a shortcode)(手動での挿入─ショートコード使用)

ページを下にスクロールすると、他の設定項目が表示されます。

  • Modified Info Date Time Format(日時の書式設定)
  • Published & Modified Time Gap(時間差)
You can choose to replace the published date with the last updated date
公開日を最終更新日に置き換えることができる

設定を保存すると、サイトのフロントエンドで最終更新日が表示されます。何か違和感があれば、設定に戻り修正できるものがないか確認してください。

A frontend view of what the plugin displays
プラグイン利用後のフロントエンドの様子

このプラグインでは、自動で固定ページの最終更新日も有効になります。そのデフォルトを解除するには、プラグインの設定に戻り、「Posts Types to Show Modified Info」フィールドに「Posts」タグを入力します。すると固定ページでの最終更新日の表示が無効になります。すべての変更を終えたら、必ず「Save settings」ボタンをクリックしてください。

Only show the updated date on Posts
投稿でのみ更新日時を表示する

WordPressの投稿や固定ページがいつ更新されたか確認する方法

WordPressの投稿に最新更新日を表示する方法はここまででご紹介したとおりですが、投稿がいつ更新されたかを確認する方法も重要です。特に「中身を更新すべき」かどうか、個別の投稿を見極める際に欠かせない情報となります。

さらに、最終更新日を表示する際に遭遇するかもしれない問題のトラブルシューティングにも役立ちます。たとえば、今回のコードのほとんどは、最終更新日が実際に存在する必要があります。投稿が更新されていなければ、何も表示されません。

WordPressの投稿や固定ページが最後にいつ更新されたかは、(上記の方法を実装する前でも)WordPress管理画面のある場所で確認できます。

残念ながら、WordPressには(当記事のコードを実装しても)バックエンドで最終更新日を表示する機能は搭載されていません。「投稿」一覧を見ると、「公開日」が表示されるのみです。

There's only a Published Date column on the backend post list
「投稿」一覧には「公開日」が表示される

「投稿」や「固定ページ」のエディター画面も同様で、「投稿」タブを見ると「公開日」は確認できますが、最終更新日については何も表示されません。

Only the Published date gets shown by default
デフォルトでは公開日だけが表示される

WordPressにある機能を使って最終更新日を窺い知る

内蔵の表示機能には頼らず、対象となる投稿を開き、右側の「投稿」タブをクリックします。下にスクロールすると、「リビジョン」ボタンがあります。

  • リビジョン」が表示されていない→一度も更新していない
  • リビジョン」が表示されている→それをクリック
Click the Revisions button to view the list
「リビジョン」をクリックすると一覧が表示される

これは最終更新日を確実に見つける手段ではありませんが、その投稿に関するアクティビティを理解するのには便利です。

リビジョンは、記事を公開するかどうかに関わらずWordPressに保存されるため、実際には最終更新日「ではない」リビジョンがあるかもしれません。しかし、過去のリビジョンを見て、その内容から、どのリビジョンが「公開した中で一番新しいものか」確認することはできます。

各リビジョンには日付と時間が記録されており、これが判断材料になります。

Check for the Last Modified date within the revisions
リビジョン内の最終更新日を確認する

また、先ほどの方法で最終更新日を表示するコードを実装したものの、フロントエンドに日付が表示されていなければ、その状況自体が更新の有無を確認する方法になります。更新されていなければ、何も表示されません。

プラグインで最終更新日を確認することも可

先ほどご紹介したプラグイン「WP Last Modified Info」は、フロントエンドでの最終更新日の表示だけでなく、管理画面での情報表示も担います。しばらく更新していない投稿を素早く特定するのに便利です。

WP Last Modified Infoをインストールした状態で、WordPressの「投稿」一覧に移動します。すると「日付」の右隣に「Last Modified(最終更新日)」が確認できます。

The plugin includes a new backend column for the Last Modified date
投稿一覧画面に「Last Modified」カラムが表示される

また、投稿エディタ内に「最終更新日」というタブで、個々の投稿の最終更新日時が表示されるようになります。

The Last Updated tab within the post editor
投稿エディター内に表示された最終更新日時

まとめ

この記事でご紹介した内容は以下の通りです。

  • ウェブサイトの最終更新日の確認方法
  • ウェブサイトに最終更新日を表示するメリット
  • WordPressでの最終更新日の表示方法
    • 方法1:テーマ内のfunctions.phpやCSSを編集する
    • 方法2:テーマのテンプレートを編集する
    • 方法3:WP Last Modified Infoのようなプラグインを使用する

以下についても扱いました。

  • 最終更新日のスタイルを変更する方法
  • 固定ページ(そして、その他の投稿以外の場所)で最終更新日を表示しないようにする方法
  • 公開日を削除し、最終更新日のみを表示する方法
  • 最終更新日の表示位置を変更する方法

最後に、人気のテーマで最終更新日を表示する方法にも触れました。

WordPressサイトで最終更新日を表示する方法について、ご質問がございましたらコメント欄でお聞かせください。

Jeremy Holcombe Kinsta

Kinstaのコンテンツ&マーケティングエディター、WordPress開発者、コンテンツライター。WordPress以外の趣味は、ビーチでのんびりすること、ゴルフ、映画。高身長が特徴。