管理画面の固定ページや投稿記事一覧に、スラッグのカラムを追加する方法 の記事にも関連しますが、WordPress 管理画面の記事一覧ページに「カスタムフィールド」の値のカラムを追加表示することも可能です。
今回は、カスタムフィールドの値を1カラム表示させる場合と、複数カラムを出力する場合のそれぞれに方法を紹介させていただきます。
カスタムフィールドの値のカラムを追加
ご利用のテーマのfunctions.php に以下のような記述を追加します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php function manage_posts_columns($columns) { $columns['カスタムフィールドのKey'] = "カラム名"; return $columns; } function add_column($column_name, $post_id) { if( $column_name == 'カスタムフィールドのKey' ) { $stitle = get_post_meta($post_id, 'カスタムフィールドのKey', true); } if ( isset($stitle) && $stitle ) { echo attribute_escape($stitle); } else { echo __(''); } } add_filter( 'manage_posts_columns', 'manage_posts_columns' ); add_action( 'manage_posts_custom_column', 'add_column', 10, 2 ); ?> |
※「カスタムフィールドのKey」の部分と「カラム名」の部分は、ブログ記事に合わせて変更してみてください。
今回は試しにカスタムフィールドのKeyを「views」、カラム名を「閲覧数」にして、記事の閲覧数のカラムを表示してみました。
表示オプションにも「閲覧数」のチェックボックスが追加されています。
ちなみに、カスタムフィールドの値がなければ、上記例だと「空値(”)」になります。
複数のカスタムフィールドの値のカラムを追加
先の「カスタムフィールドの値のカラムを追加」の記述を少し触って、複数のカラムを出力することも可能です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?php function manage_posts_columns($columns) { $columns['カスタムフィールドのKey1'] = "カラム名1"; $columns['カスタムフィールドのKey2'] = "カラム名2"; return $columns; } function add_column($column_name, $post_id) { if( $column_name == 'カスタムフィールドのKey1' ) { $stitle = get_post_meta($post_id, 'カラム名1', true); } if( $column_name == 'カスタムフィールドのKey2' ) { $stitle = get_post_meta($post_id, 'カラム名2', true); } if ( isset($stitle) && $stitle ) { echo attribute_escape($stitle); } else { echo __(''); } } add_filter( 'manage_posts_columns', 'manage_posts_columns' ); add_action( 'manage_posts_custom_column', 'add_column', 10, 2 ); ?> |
コメント