WordPress:投稿一覧で項目の並び順を変更する方法

WordPress:投稿一覧で項目の並び順を変更する方法

引き続き投稿一覧関連の備忘録。
WordPressの投稿一覧で表示されている項目の並び順を任意の並びに変更する方法です。
デフォルトだと日時の項目が一番右にありますが、先頭の方に持って行きたいというような時に使えます。

デフォルトの投稿一覧では左から「チェックボックス → タイトル → 作成者 → カテゴリー → タグ → コメント → 日時」という並び順で各項目が表示されていますが、それを任意の並び順に変更する方法です。
実装にはfunctions.phpを使用するのでテーマ内にfunctions.phpがない場合は作成し、下記のように記述してください。

functions.php

function sort_posts_columns( $columns ) {
  $columns = array(
    'cb'         => '<input type="checkbox" />',
    'title'      => 'タイトル',
    'author'     => '作成者',
    'categories' => 'カテゴリー',
    'tags'       => 'タグ',
    'comments'   => '<div class="comment-grey-bubble" title="コメント"></div>',
    'date'       => '日時'
  );
  return $columns;
}
add_filter( 'manage_posts_columns', 'sort_posts_columns' );

上記のような形で記述をすれば各項目を任意の並び順に変更することができ、上から下へ記述したものが表示される時は左から右の並びで表示されます。
上記はデフォルトの並び順と同じものになりますが、例えば並び順を「チェックボックス → タイトル → 日時 → カテゴリー → タグ → コメント → 作成者」のようにしたいという時は下記のように記述します。

functions.php

function sort_posts_columns( $columns ) {
  $columns = array(
    'cb'         => '<input type="checkbox" />',
    'title'      => 'タイトル',
    'date'       => '日時',
    'categories' => 'カテゴリー',
    'tags'       => 'タグ',
    'comments'   => '<div class="comment-grey-bubble" title="コメント"></div>',
    'author'     => '作成者'
  );
  return $columns;
}
add_filter( 'manage_posts_columns', 'sort_posts_columns' );

また、項目の並び順はデフォルトのものだけでなく後から追加したものも変更することができます。
例えば「WordPress:投稿一覧にサムネイル・ID・スラッグ・文字数の項目を追加する方法」などを使用してサムネイルを表示させているようにしている場合、サムネイルをチェックボックスの次に持っていきたい時は下記のように記述をします。

functions.php

function sort_posts_columns( $columns ) {
  $columns = array(
    'cb'         => '<input type="checkbox" />',
    'thumbnail'  => 'サムネイル',
    'title'      => 'タイトル',
    'author'     => '作成者',
    'categories' => 'カテゴリー',
    'tags'       => 'タグ',
    'comments'   => '<div class="comment-grey-bubble" title="コメント"></div>',
    'date'       => '日時'
  );
  return $columns;
}
add_filter( 'manage_posts_columns', 'sort_posts_columns' );

上記で紹介したものはいずれも投稿一覧のものになりますが、固定ページやカスタム投稿の一覧でも同じような記述で並び順を変更することが可能で、例えば固定ページで使用したい際はmanage_posts_columnsの箇所をmanage_pages_columnsに変更という感じで実装できます。

Close the search window,
please press close button or esc key.