Written by Anonymous
function customize_admin_manage_posts_columns($columns) {
$current_screen = get_current_screen();
$is_block_screen = ($current_screen && $current_screen->id === 'edit-wp_block');
// WordPress標準カラムを削除
$remove_columns = [
'author' => !is_admin_list_author_visible(),
'categories' => !is_admin_list_categories_visible(),
'tags' => !is_admin_list_tags_visible(),
'comments' => !is_admin_list_comments_visible(),
'date' => !is_admin_list_date_visible(),
];
foreach ($remove_columns as $key => $condition) {
if ($condition && isset($columns[$key])) {
unset($columns[$key]);
}
}
// 独自カラムを追加
$add_columns = [
'post-id' => ['label' => __( 'ID', THEME_NAME ) , 'condition' => is_admin_list_post_id_visible()],
'word-count'=> ['label' => __( '文字数', THEME_NAME ) , 'condition' => is_admin_list_word_count_visible()],
'pv' => ['label' => __( 'PV', THEME_NAME ) , 'condition' => is_admin_list_pv_visible() && !$is_block_screen],
'thumbnail' => ['label' => __( 'アイキャッチ', THEME_NAME ) , 'condition' => is_admin_list_eyecatch_visible() && !$is_block_screen],
'memo' => ['label' => __( 'メモ', THEME_NAME ) , 'condition' => is_admin_list_memo_visible() && !$is_block_screen],
];
foreach ($add_columns as $key => $data) {
if (!empty($data['condition'])) {
$columns[$key] = $data['label'];
}
}
return $columns;
}