WordPressの始め方と使い方をわかりやすく解説!

WordPress管理画面の投稿一覧にカスタムカラムを追加する方法

WordPress管理画面の投稿一覧では、次の項目が列として表示されています。

  • タイトル
  • 投稿者
  • カテゴリー
  • タグ
  • コメント
  • 日付

このような列は、自身で追加することが可能です。

例えば、投稿IDを投稿一覧に表示することができます。

列の追加は、フィルターとアクションを利用して簡単に行うことができます。

この記事では、WordPress管理画面の投稿一覧にカスタムカラムを追加する方法を解説します。

WordPress管理画面の投稿一覧にカスタムカラムを追加する手順

  1. フィルターでカスタムカラムを追加
  2. アクションでカスタムカラムに表示する内容を表示

フィルターはmanage_{$post_type}_posts_columnsを、アクションはmanage_{$post->post_type}_posts_custom_columnを利用します。

WordPress管理画面の投稿一覧にカスタムカラムを追加する方法

フィルターでカスタムカラムを追加

WordPress管理画面の投稿一覧にカスタムカラムを追加するには、`manage_{$post_type}_posts_columns`フィルターを利用します。

apply_filters( "manage_{$post_type}_posts_columns", string[] $post_columns )

`{$post_type}`は、カスタムカラムを追加したい投稿タイプのスラッグに置き換えます。つまり投稿の場合は、`manage_post_posts_columns`になります。

引数の$post_columnsに一覧で表示したい項目を連想配列で指定します。

manage_{$post_type}_posts_columnsはカスタムカラムの追加だけでなく、既存カラムの変更や削除も行うことができます。

アクションでカスタムカラムに表示する内容を表示

WordPress管理画面の投稿一覧のカラムに表示する内容は、manage_{$post->post_type}_posts_custom_columnアクションを利用します。

do_action( "manage_{$post->post_type}_posts_custom_column", string $column_name, int $post_id )

{$post->post_type}は、該当する投稿タイプのスラッグを指定します。つまり投稿の場合は、manage_post_posts_custom_columnになります。

$post_idを利用して、そのカラムに表示したい内容を記述します。

WordPress管理画面の投稿一覧にカスタムカラムを追加する具体例

上記で解説したフィルターまたはアクションは、既存テーマをカスタマイズしたい場合、functions.phpに記述します。

投稿IDを表示するカスタムカラムを追加する

カスタムカラムを追加する簡単なサンプルです。投稿一覧のカラムの最後に各投稿に割り振られている投稿IDを表示します。

add_filter('manage_post_posts_columns', function($columns) {
$columns['id'] = '投稿ID'; // 必要に応じてローカライズ
  return $columns;
});
 
add_action('manage_post_posts_custom_column', function($column_name, $post_id) {
  if ($column_name == 'id') {
    echo $post_id;
  }
}, 10, 2);

https://developer.wordpress.org/reference/hooks/manage_post_type_posts_columns/

https://developer.wordpress.org/reference/hooks/manage_post-post_type_posts_custom_column/

関連記事

FOXWP

Conoha WINGからエックスサーバーにWordPressの引越しを行う手順

Conoha WINGからエックスサーバーに引越しを行う手順 Conoha WINGからエックスサーバーに引越しを行う際の注意点 ネームサーバーがエックスサーバーのネームサーバーに設定されていないと、無料独自SSLの設定

FOXWP

wp-envで構築したWordPressのデータベースへアクセスする手順

wp-envで構築したローカル開発環境のデータベースにサクセスするには、Local WordPress EnvironmentのAccessing the MySQL Databaseに記載されている方法で行えます。 参

FOXWP

【WordPress】はじめてのブロックエディター開発

この記事では、WordPressでブロック開発をした際のメモです。 WordPressで必要最低限のブロックを開発するには、@wordpress/create-blockパッケージを作成することですぐにできます。 参考:

FOXWP

wp-envとは?使い方を解説

wp-envを利用した際のメモです。 wp-envとは? ローカルのWordPress開発環境 wp-envとは、ローカルのWordPress開発環境です。Docker Desktopと合わせて利用します。 wp-env

FOXWP

WordPressのおすすめセキュリティプラグイン6選

WordPressセキュリティプラグインを使えば、専門的知識がない方でも手軽にセキュリティ対策を行うことができます。 マルウェア・ブルーフォースアタック・ハッキングといった様々な障害からあなたを守ってくれます。 この記事

FOXWP

WordPressでおすすめの目次プラグイン8選

記事に目次を挿入すれば、読者に記事の全体像を理解してもらいやすくなります。欲しい情報があるか判断する手助けとなり、読者にとって使いやすいサイトと認識してもらえます。 この記事では、目次を挿入できるおすすめのWordPre