メインコンテンツに移動

記事の公開日・更新日の正しい管理方法|Drupalで更新履歴と旧版を残す仕組み

記事の公開日・更新日の正しい管理方法|Drupalで更新履歴と旧版を残す仕組み

この記事で分かること

  • 保存しただけで「更新日」が変わってしまう理由
  • 投稿日と更新日を、読む人に分かりやすく並べる方法
  • 更新履歴に書くこと・書かないことの線引き
  • 更新前の記事を、管理者だけが見られる形で残す方法

当社のブログでは、記事の日付を「最終更新日」として表示していました。ところが、その日付は記事を保存するたびに自動で変わる日付でした。誤字を1文字直しても、アイキャッチを差し替えても、記事は「更新された」ことになります。

中身が変わっていないのに日付だけ新しくなるのは、読む人にも検索エンジンにも正確ではありません。そこで、Drupalで作っているこのブログに、投稿日と更新日を分けて表示し、内容を書き直したときだけ更新日が変わる仕組みを作りました。あわせて、更新前の記事(旧版)を残す方法も決めました。

この記事では、実際に作った仕組みと、その考え方を紹介します。

この記事の要点

  • CMSの「更新日時」は、保存するたびに自動で変わる。誤字直しでも画像の差し替えでも変わる
  • 記事に「更新履歴」の欄を足し、1行書いたときだけ、その日付を「更新日」として表示する
  • 投稿日はカテゴリの横、更新日と更新履歴はその下の行に並べ、記事の下に変更の内容を残す
  • 検索エンジン向けの構造化データ(dateModified)も、表示と同じ日付にそろえる
  • 更新前の記事は公開せず、管理画面の「版の記録」に残す。見られるのは管理者だけ

なぜ「最終更新日」が当てにならなくなるのか

Drupalに限らず、多くのCMSは記事を保存した日時を自動で記録しています。これをそのまま「最終更新日」として表示すると、次のような保存もすべて「更新」に数えられてしまいます。

  • 誤字や句読点を1か所直した
  • アイキャッチ画像を差し替えた
  • タグやカテゴリを付け直した
  • サイト全体の作業で、記事をまとめて保存し直した

当社でも、全記事のアイキャッチを作り直したときに、この問題に気づきました。そのまま保存すると、50本以上の記事の「最終更新日」が同じ日にそろってしまいます。読む人から見れば「全部の記事を書き直した」ように見えますが、実際には文章は1文字も変わっていません。

Googleも、ページに表示する日付と構造化データの日付をそろえること、日付が更新日なら「Last updated(更新日)」のように分かる名前を付けることをすすめています。

「保存」と「更新」を分ける

考え方はシンプルです。自動の日時は使わず、「更新した」と人が判断したときだけ日付を残すようにしました。記事の編集画面に「更新履歴」という欄を足し、内容を書き直したときに、次のような1行を書きます。

2026-10-23 修正版の確認方法を追記

この欄のいちばん新しい日付が、記事の「更新日」になります。欄に何も書かずに保存したときは、更新日は変わりません。下の図は、2つの場合の違いを示したものです。図をクリックすると、その場で動画で確認できます。

保存しただけのときと、内容を更新したときで、更新日・構造化データ・更新履歴・旧版がどう変わるかを比べた図

投稿日と更新日の見せ方

日付が2つになると、スマホでは並べ方に工夫が要ります。カテゴリのラベルの横に3つも4つも並べると、折り返して読みにくくなるからです。そこで、次の2行に分けました。

場所表示する内容出るとき
1行目カテゴリのラベル+投稿日(アイコン付き)すべての記事
2行目更新日+「更新履歴」へのリンク(アイコン付き)更新履歴を書いた記事だけ
記事の下この記事の更新履歴(日付と、何を変えたか)更新履歴を書いた記事だけ

1行目はどの記事も同じ形なので、一覧で並んだときもそろって見えます。更新した記事だけ2行目が増えるので、「この記事は手が入っている」ことが一目で分かります。

更新履歴に書くこと・書かないこと

線引きは「前の版を読んだ人が、もう一度読む価値がある変更か」で決めています。

書く書かない
新しい情報の追記誤字・句読点の直し
間違いの訂正見出しの番号や書式の整理
説明の書き直しアイキャッチや画像の差し替え
タイトルの変更リンク先の付け替えだけ

書くときは「何を変えたか」が分かる短い文にします。「内容を更新」だけでは、読む人が確かめようがないからです。

検索エンジン向けの日付もそろえる

このブログでは、記事の情報を検索エンジンやAIに伝えるために、構造化データ(JSON-LD)を出しています。その中のdateModified(更新日)も、以前は自動の更新日時を使っていました。

今回、ここも表示している更新日と同じ日付に変えました。更新履歴を書いていない記事は、投稿日と同じ日付になります。ページに見える日付と、検索エンジンに伝える日付が食い違わないようにするためです。構造化データの作り方は「構造化データでサイト全体をつなぐ|DrupalでJSON-LDを実装した方法と考え方」で紹介しています。

更新前の記事はどう残すか

記事を書き直すと、前の内容は消えてしまいます。「前はどう書いてあったか」を後から確かめられるよう、更新前の記事も残すことにしました。

Drupalには、保存のたびに記事の全文を残す「版の記録(リビジョン)」の機能があります。前の版を開いて見比べたり、前の版に戻したりできます。当社のブログでは、この機能を使い、旧版は公開せず、管理者だけが見られる形にしています。下の図は、更新の記録が残る3つの場所を示したものです。

更新の記録が、記事の上・記事の下・管理画面の3か所に残ることを示した図

旧版を公開しなかったのは、ほぼ同じ内容のページが増えて検索での評価が分かれたり、古い手順が検索から読まれてしまったりするのを避けるためです。読む人には、記事の下の更新履歴で「いつ・何が変わったか」を伝えれば十分だと考えました。

過去の記事にもさかのぼって記入した

仕組みを作ったあと、すでに公開している記事の旧版をたどり、投稿日より後に本文やタイトルが変わった日を洗い出しました。

中身を見比べると、見出しに番号を付けただけの変更も多くありました。それらは書かず、タイトルの変更や本文の書き直し、情報の追記があった17本にだけ、更新履歴を記入しました。記入するときも「保存しただけ」の扱いにしたので、更新日以外の日付は変わっていません。

よくある質問

Q. 更新日を新しくすると、検索で有利になりますか?

日付を変えただけで評価が上がるわけではありません。中身が変わっていないのに日付だけ新しくするのは、読む人の判断を誤らせます。内容を本当に更新したときに、正しい日付を見せることが大切です。

Q. WordPressでも同じことはできますか?

WordPressも、表示している更新日は保存した日時であることが多いです。テーマやプラグインの設定で「更新日を変えずに保存する」「投稿日だけを表示する」などができる場合があります。仕組みは違っても、「保存」と「更新」を分けるという考え方は同じです。

Q. 旧版はどれくらい残りますか?

Drupalの版の記録は、消さない限り残り続けます。記事の数や保存の回数が多くなると、データベースが大きくなるので、バックアップと合わせて大きさを見ておくと安心です。

まとめ

  • CMSが自動で記録する更新日時は、保存しただけでも変わる
  • 「更新履歴」の欄に書いたときだけ更新日が変わるようにすると、日付が正確になる
  • 投稿日はラベルの横、更新日と更新履歴はその下、変更の内容は記事の下に残す
  • 構造化データの日付も、表示と同じにそろえる
  • 旧版は公開せず、管理画面の版の記録に残す

金風株式会社では、ブログやホームページの「見せ方」と「仕組み」を、検索やAIへの伝わり方まで含めて設計しています。記事の運用や更新のしかたでお困りのことがあれば、お気軽にご相談ください。

あわせて読みたい

参考資料

最新のお役立ち情報はメルマガでもお届けしています