ワードプレスの管理画面投稿リストテーブルに列を追加するPHPコードをご紹介いたします。

ワードプレスの投稿リストに新規の列を追加し、投稿IDを表示してみます

下記のコードをテーマのFunctions.phpや作成されているプラグインに追加することで投稿リストに、オリジナルな列を作ることができます。

add_filter( 'manage_posts_columns', 'set_custom_columns' ); //1
function set_custom_columns($columns) {
    $columns['columnkey'] = '列の名称'; //2
    return $columns;
}

add_action( 'manage_posts_custom_column' , 'custom_column', 10, 2 ); //3
function custom_column( $column, $post_id ) {
    switch ( $column ) {
        case 'columnkey' :
            echo "オリジナルな列です。投稿IDは".$post_id; //4
            break;
    }
}

1 投稿のリストテーブルの列にオリジナルな独自の列を拡張します
add_filter 関数でワードプレスの処理に割り込んで内部変数を追加することで独自の投稿リストの列を拡張します。
その下に続くset_custom_columns という処理がこの命令を実行するプログラム部分となります。

2 列の名称とキーの設定
columnkey と 列の名称 は任意の名称を設定します。
列の名称 は拡張した列の表示名になります。
columnkeyがこの列に表示する情報を出力するカギとなります。

3 行を出力する処理に割り込んで独自の内容を出力する
add_action で行を出力する処理に割り込んで設定したキーのところに独自の出力を行います。
10 の部分はこの関数の優先順位で、2の部分は列のキーと、投稿のIDを受け取るようにする設定です。

※2にすると function custom_column( $column, $post_id ) の$column, $post_idの2つの値を受け取れるという事になります。

4 出力の処理
//2で設定したキー(columnkey) の出力の順番が回ってきたときに
echo “オリジナルな列です。投稿IDは”.$post_id;
でその行に、独自の出力を行います。$post_id には投稿のIDが入りますので自由に利用することができます。

WordPress のカスタマイズ、プラグインの作成の代行などなんでも請け負います。ワードプレスドクターにお気軽にご相談・ご依頼お送りください。