投稿者を加える
カスタム投稿タイプの管理画面一覧に投稿者を加えたい
WordPress案件を構築している中で発見があったので、メモ。カスタム投稿タイプでタグとカテゴリーを用意したい投稿があったので、導入しました。すると、記事一覧には投稿日時しか表示されていません。クライアントが普通の投稿一覧画面と見比べて、わかりにくく感じる可能性があったので、必要な要素を表示する方法を探すことに。すると、すぐに見つかり、参考にしたのがこちらのサイトです。
【WordPress】管理画面で、タクソノミーやカスタムフィールドの列を追加する(ソート機能付き) | 東京のホームページ制作 / WEB制作会社 BRISK
WordPressのカスタマイズをしていて、管理画面の投稿一覧の使い勝手も向上させたい!と思う時ってありますよ
東京のホームページ制作 / WEB制作会社 BRISK | ハイクオリティなWEBサイトを全ての会社に!BRISKは東京都江東区を拠点とするWEB制作会社です。企業サイトや採用サイトの制作、WordPress構築を得意としています。
カスタム投稿タイプの設定と同様、function.phpでコントロールするようです。ソートもついて、いい感じですね。私が表示させたかったのは、id・タグ・カテゴリー・投稿者で、まずはidのみで試すことに。解説をじっくり読まなかったため、うまく表示されませんでしたが、試行錯誤するとなんとか表示されました。続いて、カテゴリーとタグも加えます。これらもidと同様に加えてあげると、苦労することなく表示されました。
本当は投稿者も同じ手順を踏んでやる予定でしたが、手順を間違えて、function my_add_columns_contentに追加することなくブラウザで確認してしまいます。すると、一覧に表示されているではありませんか。試しに、タグとカテゴリーもfunction my_add_columns_contentからコメントアウトすると表示されません。ちなみに、$columns[‘categories’]とやると罫線が表示されるので、普通の投稿で使われているものはfunction my_add_columns_contentに記載しなくても良いのかもしれませんね。
<?php
function my_manage_posts_columns_category_many($columns) {
$columns['term_id'] = 'JOB ID';
$columns['author'] = "投稿者";
$columns['job-cat'] = "カテゴリー";
$columns['job-tag'] = "タグ";
return $columns;
}
function my_add_columns_content($column_name, $post_id) {
if( $column_name == 'term_id' ) {
$stitle = $post_id;
}
if( $column_name == 'job-cat' ) {
$tax = wp_get_object_terms($post_id, 'job-cat');
$sstitle = $tax[0]->name;
}
if( $column_name == 'job-tag' ) {
$tax = wp_get_object_terms($post_id, 'job-tag');
$ssstitle = $tax[0]->name;
}
if ( isset($stitle) && $stitle ) {
echo esc_attr($stitle);
}
if ( isset($sstitle) && $sstitle ) {
echo esc_attr($sstitle);
}
if ( isset($ssstitle) && $ssstitle ) {
echo esc_attr($ssstitle);
}
}
function my_manage_edit_category_many_sortable_columns($columns){
$columns['term_id'] = 'JOB ID';
$columns['author'] = "投稿者";
$columns['job-cat'] = "カテゴリー";
$columns['job-tag'] = "タグ";
return $columns;
}
add_filter( 'manage_edit-job_columns', 'my_manage_posts_columns_category_many' );
add_action( 'manage_job_posts_custom_column', 'my_add_columns_content', 10, 2 );
add_filter( 'manage_edit-job_sortable_columns', 'my_manage_edit_category_many_sortable_columns');
?>
コメント
選曲
The Moldau