PR

【WordPress】管理画面の投稿一覧に更新日の列を追加する方法

WordPressの投稿一覧画面に最終更新日を追加記事のアイキャッチ画像

WordPressの管理画面にある「投稿一覧」には、「公開日(日付)順」がありますが「更新日」の列があると嬉しいですよね。

以下のように「最終更新日」の列を追加すると、「どの記事をいつ更新したか」が把握しやすくなり、リライトも効率的になります。

投稿一覧に最終更新日の列が追加されたWordPress管理画面
  • 機能追加: functions.phpに専用のコードを追記するだけで、投稿一覧に「最終更新日」の列を追加し、並べ替え(ソート)を可能にする。
  • 対応内容: 「列の追加」「値の表示」「ソート機能」の3ステップ。
  • メリット: プラグイン不要。リライトが必要な古い記事や、最新の更新状況がひと目で把握できる。

以下のコードをfunctions.phpに追記すればOKです。

Auto
/* ------------------------------------
管理画面:記事一覧に最終更新日の列を追加
(最終更新日で並び替え出来るようにする)
------------------------------------ */
// 1. 投稿一覧に「更新日」という項目(列)を作る
function add_modified_column($columns) {
    $columns['last_modified'] = '更新日';
    return $columns;
}
// 優先順位を20にして、他の項目との重なりを防ぐ
add_filter('manage_posts_columns', 'add_modified_column', 20);

// 2. 作った項目の中に「実際の日付」を表示する
function display_modified_column($column_name, $post_id) {
    if ($column_name == 'last_modified') {
        // 表示する日付の形式(xxxx年xx月xx日 時間)を指定
        echo get_the_modified_date('Y年n月j日 g:i A', $post_id);
    }
}
add_action('manage_posts_custom_column', 'display_modified_column', 10, 2);

// 3. 「最終更新日」をクリックして並び替え(ソート)できるようにする
function sortable_modified_column($columns) {
    $columns['last_modified'] = 'modified';
    return $columns;
}
add_filter('manage_edit-post_sortable_columns', 'sortable_modified_column');
Jin Simple Code Block

縦長の表示になる場合
Cocoonなど、テーマによっては、最終更新日の列が縦長になってしまう場合があるようです。その場合にはCSSを追加すれば良いので、最後の方のカスタマイズの個所を見てみてください。

では今回は、このコードの実際の使い方、カスタマイズの仕組み、注意すべきポイントを詳しく解説します。

最終更新日の列を追加する方法

投稿一覧に最終更新日の列を追加する手順はシンプルで、以下3つ。

  • 1)投稿一覧に「”更新日”」という名の列を追加
  • 2)その列を表示時に、「最終更新日の値」を取得&表示する
  • 3)表示された列(最終更新日)をソート(並び替え)できるようにする

この1~3を実際コードにしたのが最初に示したコードです。

これをテーマのための関数(functions.php)に追加すれば良いですね。

テーマのための関数(functions.php)への追加方法はこちら

まずは「外観」⇒「テーマエディター」を選択。

WordPress管理画面の外観からテーマエディターを選択する様子

↓↓↓↓↓↓

はじめてテーマエディターを使う場合には、
以下のようなご注意が表示されますが慌てない。

テーマエディター使用時の警告メッセージと理解しましたボタン
  • 「理解しました」をクリック!

↓↓↓↓↓↓

テーマエディターに入ったら、
右側のテーマファイルから「functions.php」(テーマのための関数)を選んで、先ほどのコードをコピペ。

functions.phpに最終更新日追加コードを貼り付けた状態
  • ①:「functions.php」をクリック
  • ②:先ほどのコードをコピペで貼りつけ
  • ③:最後に「ファイルを更新」をクリック!

以上でコードの貼り付けは終わり!

この後、実際に投稿一覧を見てみて
「更新日」の列が表示されているか確認してみてください。

※)ここでは「cocoon」というテーマでのfunctions.phpへの貼り付け例ですが、他のテーマでも同様です。

では、追加したコードが何をやっているのかの解説から、いろいろなカスタマイズ(表示の変更など)を以下ご紹介。

固定ページの一覧も同様に
この「最終更新日」を表示したい場合には、カスタマイズのところを見てみてください。

追加コードの解説

今回追加するコードの簡単解説です。
「表示文言を変えたい」などでは、こちらを参考にしてみてください。

ステップ1:投稿一覧に「更新日」の列を追加

まずは管理画面の投稿一覧に、新しい列を作ります。
「更新日」の文言を変えたい場合はこちらをチェックしてみてください。

コードの解説はこちら
Auto
// 1. 投稿一覧に「更新日」という項目(列)を作る
function add_modified_column($columns) {
    $columns['last_modified'] = '更新日';
    return $columns;
}
// 優先順位を20にして、他の項目との重なりを防ぐ
add_filter('manage_posts_columns', 'add_modified_column', 20);
Jin Simple Code Block
  • 投稿一覧に表示される「タイトル」「日付」などの列($columns)にlast_modifiedという列を追加して、その名前を「更新日」とする。
    (「更新日」の表示名を変えるならここ)
  • 投稿一覧の列を取得するタイミング(manage_posts_columns)で、この関数を実行する。

manage_posts_columns」はフィルター、またはフィルターフックと呼ばれるもので、WordPressが投稿一覧の列をチェックした時をとらえて、追加した関数(add_modified_column)を実行しています。

コードの最後にある「20」という数値は優先順位。あえて数値を大きくして後から実行させるようにしてます。これによってCocoonなどの主要テーマでも他の項目と干渉せず、確実に列の最後尾へ「最終更新日」が追加されるよう最適化してるってわけですね。

2)値を取得して更新日時を表示

更新日の値の取得と表示や、日付の表示形式を指定します。
日付の表示形式を変えたい場合には、この部分をチェックしてみてください。

コードの解説はこちら

Auto
// 2. 作った項目の中に「実際の日付」を表示する
function display_modified_column($column_name, $post_id) {
    if ($column_name == 'last_modified') {
        // 表示する日付の形式(xxxx年xx月xx日 時間)を指定
        echo get_the_modified_date('Y年n月j日 g:i A', $post_id);
    }
}
add_action('manage_posts_custom_column', 'display_modified_column', 10, 2);
Jin Simple Code Block
  • 実際に投稿一覧が表示されるタイミング(manage_posts_custom_column)で、対象記事の更新日を取得して表示する。

取得した更新日は、「Y年n月j日 g:i A」の形式(例:2026年5月1日 7:02 PM)
コード内の指定に合わせて「Y/m/d H:i」の形式で表示するようにしています。

(例:2026/05/19 14:30)

  • Y:4桁の西暦(例:2026)
  • n:月(1桁の月には0をつけない。例:5)
  • j:日(1桁の日には0をつけない。例:19)
  • g:12時間表記の時間(1桁の時にも0をつけない。例:1)
  • i:2桁の分(1桁の時でも0をつけて2桁にする。例:05)
  • A:午前・午後(AM または PM)

日付の表示形式(フォーマット記号)について、詳しくは以下公式情報を参照してみてください。
日付と時刻の書式(jp.wordpress.org)

よく使われる表示形式の例:

  • 2026年5月1日(単純な日本語表記にしたい場合)
    'Y年n月j日'
  • 2026.5.1(ドット区切りでスマートにしたい場合)
    'Y.n.j'
  • 2026/5/1 14:30(標準設定:秒数なしの24時間表記)
    'Y/n/j H:i'

3)ソート(並べ替え)ができるようにする

最後に、追加した「更新日」の項目名をクリックしたとき、日付順(新しい順・古い順)に記事を並び替えられるようにします。

ここは特にカスタマイズするようなところではないですね。

コードの解説はこちら

Auto
// 3. 「最終更新日」をクリックして並び替え(ソート)できるようにする
function sortable_modified_column($columns) {
    $columns['last_modified'] = 'modified';
    return $columns;
}
add_filter('manage_edit-post_sortable_columns', 'sortable_modified_column');
Jin Simple Code Block
  • 列を並べ替え(ソート)するタイミング(manage_edit-post_sortable_columns)で、何を基準にして並べ替えをするか(内部的な基準値)を決定。

最終更新日順でソートしたいので、ステップ1で作成した「更新日」の項目($columns['last_modified'])に対して、WordPressが標準で持っている更新日データ(modified)を基準値として設定しています。

「表示オプション」と「カスタマイズ」

最後に、以下3つのカスタマイズをご紹介。

  • 1)追加した「最終更新日」の列をより使いやすくする表示オプション
  • 2)固定ページにも一括で対応させ方法
  • 3)表示崩れ時のCSS対応の解説です。

1)表示オプションで表示項目を整理する

最終更新日の列を追加したことで投稿一覧の画面が狭く感じたり、見づらくなったりした場合は、WordPressの標準機能で不要な項目を非表示にしましょう。

  1. 投稿一覧ページの一番右上にある「表示オプション」をクリック。
  2. 項目の一覧が表示されるので、
    非表示にしたい項目(例:作成者など)のチェックを外す。
  3. 最後に「適用」ボタンをクリック!

これで管理画面がすっきりし、
「最終更新日」のデータがより見やすくなります。

WordPress投稿一覧の表示オプションメニュー

↓↓↓↓↓↓

項目の一覧が表示されるので、
・「表示したい項目」にはチェックを入れる
・「非表示にする項目」はチェックを外す

表示オプションで列の項目を切り替える設定画面

②:最後に「適用」をクリック!

2)固定ページの一覧にも「最終更新日」を追加する

ブログ記事(投稿一覧)だけでなく、固定ページの一覧にも「最終更新日」の列を追加したい場合では、導入部で紹介したコードのフック部分に固定ページ用の記述(page)を追加するだけで対応できます。

以下が、投稿・固定ページの両方に対応した完成版のコードです。

Auto
/* ------------------------------------
管理画面:記事一覧に最終更新日の列を追加
(最終更新日で並び替え出来るようにする)
------------------------------------ */
// 1. 投稿一覧・固定ページ一覧に「最終更新日」の項目(列)を作る
function add_modified_column($columns) {
    $columns['last_modified'] = '最終更新日';
    return $columns;
}
add_filter('manage_posts_columns', 'add_modified_column', 20);
add_filter('manage_pages_columns', 'add_modified_column', 20); // 固定ページ用を追加

// 2. 作った項目の中に「実際の日付」を表示する
function display_modified_column($column_name, $post_id) {
    if ($column_name == 'last_modified') {
        echo get_the_modified_date('Y/m/d H:i', $post_id);
    }
}
add_action('manage_posts_custom_column', 'display_modified_column', 10, 2);
add_action('manage_pages_custom_column', 'display_modified_column', 10, 2); // 固定ページ用を追加

// 3. 「最終更新日」をクリックして並び替え(ソート)できるようにする
function sortable_modified_column($columns) {
    $columns['last_modified'] = 'modified';
    return $columns;
}
add_filter('manage_edit-post_sortable_columns', 'sortable_modified_column');
add_filter('manage_edit-page_columns', 'sortable_modified_column'); // 固定ページ用を追加
Jin Simple Code Block

各ステップの最後に manage_pages_〜 という
固定ページ専用のコードが1行ずつ追加しているだけ。

投稿も固定ページも一元管理してリライトを効率化したい場合は、こちらのコードを functions.php に貼り付けてみてください。

3)表示が崩れる場合のCSS対応

テーマによっては、
今回追加した「更新日」の列が、一覧表の外に飛び出したようになり、縦長で表示が見えない、という場合もあります。(Cocoonなどテーマによる)

この場合には、管理画面に以下のCSSを使ってみてください。

CSS
.wp-list-table .column-last_modified {
    width: 15% !important;
    word-break: break-all;
    white-space: normal;
}
Jin Simple Code Block

管理画面にCSSを反映するのは簡単です。
以下を参照してみてくださいね。

【WordPress】管理画面や記事作成画面にCSSを反映させる方法!プラグインを使って簡単に

今回のポイント

WordPressの管理画面にある「投稿一覧」は、サイト運営の中で最も頻繁に使う1つ。「最終更新日」の列を追加すると以下ができますね。

  • 更新状況が一目瞭然:
    「あの記事、本当に更新したっけ?」という確認の手間がなくなる。
  • リライトの効率化:
    記事を「更新日が古い順」に並び替えることで、メンテナンスが必要な放置記事をすぐに見つけられる。
  • SEO効果の最大化:
    検索エンジンにとっても、過去記事の定期的なリライトと情報の最新化は評価を大きく左右する重要な要素。

私自身も、管理画面を「最終更新日の古い順」にソートして、放置されている記事を定期的に見つけ出してはリライトする、という運用方法を取り入れています。

これだけで作業効率が劇的にアップしました。

プラグインなしで数分で実装できるカスタマイズですので、ぜひ「最終更新日」を表示させて、計画的で効果的なブログ運営に役立て行きましょう!

またネットビジネスをしてみたいけどよく分からない、ブログの収益化を狙っているけどどうもうまくいかない、などあれば、以下からメルマガにも登録してみてくださいね。
(何か良いことあるかも知れませんよ ^-^))

早期退職して海外で奮闘する JIN のメールマガジン

時間や場所に縛られず稼いだJINが教える

~ 最短で月収10万円稼げるようになる方法 ~

お名前/ニックネーム

隣のあの人にも、思わず教えたくなる秘密

配信停止は、いつでもできます

迷惑メールは一切配信されませんので、ご安心くださいね

自らの手で未来を変える力を手に入れる!

コメント