2022年03月26日

Actionフック:manage_posts_custom_column

アクションフックの manage_posts_custom_column は、管理画面の「投稿一覧」のカラムが表示される時にフックされます。

投稿ページの新規カラムにデータを表示する時に利用します。

 

全体像は下記ドキュメントを参照して下さい。

管理画面のカスタマイズの基本知識

 

1.利用サンプル

下記の事例は、フィルタフックmanage_posts_columns を使って、投稿一覧に追加した「スラッグ」と「更新日」フィールドにデータを表示しています。

/* 新設フィードへのデータの表示 */
function post_data_add($column_name, $post_id) {
  $post = get_post($post_id);
  if($column_name == 'slug') {
    $slug = $post->post_name;
    echo esc_html($slug);}
  else if($column_name == 'modified'){
    $date = get_the_modified_date('Y年n月j日',$post_id);
    echo esc_html($date);} 	
}
add_action( 'manage_posts_custom_column', 'post_data_add', 10, 2 );

■2行目

参照変数として「$column_name:カラム名」と「$post_id:ポストID」が渡されます。

よって、11行目の引数の値は2になります。

■3行目

ポストIDを指定してget_post()でオブジェクトデータをデータベースから取得します。

■4~6行目

カラム名が「slug」ならオブジェクトデータから「スラグ名」を取り出して表示しています。

■7~9行目

カラム名が「modified」ならget_the_modified_date()で「更新日」取得して表示しています。

 

アクションフック&関数
  • admin_init
  • admin_menu
  • after_setup_theme
  • customize_register
  • manage_pages_custom_column
  • manage_posts_custom_column
  • pre_get_posts
  • save_post
  • widgets_init
  • wp_enqueue_scripts
  • wp_head
  • add_editor_style()
  • add_post_type_support()
  • add_theme_support()
  • do_action()
  • get_post()
  • get_theme_mod()
  • register_nav_menu()
  • register_post_type()
  • register_sidebar()
  • register_taxonomy()
  • register_widget()
  • remove_action()
  • remove_editor_styles()
  • remove_theme_support()
  • set_post_thumbnail_size()
  • set_query_var()
  • show_admin_bar()
  • unregister_nav_menu()
  • unregister_widget()
  • wp_enqueue_script()
  • wp_enqueue_style()