WordPressの管理画面に「最終更新日」の項目を増やし、ソートで並び替えたい!

WordPressの初期設定では「日付」しかしかなく、投稿日の順番でしか並び替えることができません。
新しい記事を公開し続けるタイプの運営であれば問題ないのですが、過去の記事のメンテナンスをするときに古い投稿日順に並び替えておけば便利だと思い、やり方を探していました。

SEO的にも、古い記事のままだと評価が下がると言われているので、時間が許すのであれば過去記事のメンテナンスもやってみてはいかがでしょうか。新しい記事を書くことも大事ですが、過去記事を振り返って、修正してみましょう。
古い記事を古い記事のまま公開しておくと、今は使われない技術だったり、嘘の情報になっている可能性もあります。

メンテナンスは必要ですよ!

プラグインで最終更新日を表示させる

最終更新日を表示させるだけなら「Admin Columns」というプラグインが簡単です。
しかし、ソートすることができないので、私の目的は達成することができませんでした。表示させるだけで良いという方には便利なプラグインでしたが、最終更新日の順番でソートしたいので、funtions.php にコードを書いて修正してみました!

コードの紹介


// 最終更新日を表示させてソートもさせる -------------------------------------------------------

add_filter( 'manage_edit-post_columns', 'aco_last_modified_admin_column' );
 
// Create the last modified column
function aco_last_modified_admin_column( $columns ) {
  $columns['modified-last'] =__( '最終更新日', 'aco' );
  return $columns;
}
 
add_filter( 'manage_edit-post_sortable_columns', 'aco_sortable_last_modified_column' );
 
// Allow that content to be sortable by modified time information
function aco_sortable_last_modified_column( $columns ) {
  $columns['modified-last'] = 'modified';
  return $columns;
}
 
add_action( 'manage_posts_custom_column', 'aco_last_modified_admin_column_content', 10, 2 );
 
// Format the output
function aco_last_modified_admin_column_content( $column_name, $post_id ) {
 
  // Do not continue if this is not the modified column
  if ( 'modified-last' != $column_name )
    return;
 
  $modified_date   = the_modified_date( 'Y年Md日Ag時i分' );
  $modified_author = get_the_modified_author();
 
  echo $modified_date;
  echo '<br>';
  echo '<strong>' . $modified_author . '</strong>';
 
}

以上です!

「こんな感じになりましたー」
wp-updated-sort

目的も達成できて大満足!
せっかく覚えた便利な機能も忘れてしまっては意味がないので、自分用のメモの意味を込めて公開いたします!
同じことでお困りのWordPressユーザーの参考になれば幸いです。

[記事公開日]2016/06/05  [最終更新日]2016/11/25