ウサヲブログ  HOME

ウェブ制作に関わる備忘録などを綴ります

このページの位置: HomeWordpress「管理画面のカスタム投稿一覧にカスタムフィールド を表示したい時の注意」の記事

管理画面のカスタム投稿一覧にカスタムフィールド を表示したい時の注意

ウサヲです。
いざって時に助かるものをアップして残しておこうシリーズ。

管理画面のカスタム投稿一覧にカスタムフィールドやアイキャッチ を表示しようとしたのに、なぜか表示してくれなかった・・その時の格闘をメモ。

やりたいこと

管理画面のカスタム投稿一覧にカスタムフィールドやアイキャッチを表示したい。
一覧の順序としては、左側から「タイトル」、「カスタムフィールド(ここでは会社名) 」、「アイキャッチ」、「カスタム分類名」、「日付」としたい。

(実際のところ、ウサヲがすべての処理をやったわけではなく、色々と、あれこれその、温かい目でヘルプしてくれる方の力があっての内容ですが・・)

やったこと

以下、functions.php

// カスタム投稿タイプ company 一覧表示
function add_library_columns_name($columns) {
  $date_escape = $columns['date']; // いったん避難
  $tax_escape = $columns['taxonomy-カスタム分類名']; // いったん避難
  unset($columns['date']); // 消す
  unset($columns['taxonomy-カスタム分類名']); // 消す
  $columns['company_name'] = '会社名';
  $columns['eye_catch'] = 'アイキャッチ';
  $columns['taxonomy-カスタム分類名'] = $tax_escape; //ここで戻すと分類が最後から2番目
  $columns['date'] = $date_escape; // ここで戻すと日付が最後
  return $columns;
}
function add_company_column($column_name, $post_id) {
  if( $column_name == 'company_name' ) {
     echo get_post_meta($post_id, 'campany_name', true);
  }
  if ( 'eye_catch' == $column_name ) {
    $thumb = get_the_post_thumbnail($post_id, array(68, 68), 'thumbnail');
    echo ($thumb <> '') ? $thumb : '...';
  }
}
add_filter('manage_edit-company_columns', 'add_company_columns_name');
add_action('manage_company_posts_custom_column', 'add_company_column', 10, 2);

 

注目すべきはこの一番最後の行でありまして。

manage_company_posts_custom_column

このcompanyの部分が今回どうしても必要だったのです。なぜ?なぜでしょう。
いつもはカスタム投稿でも

manage_posts_custom_column

これだけでできてた・・と思うのだけど・・。

まぁでもこれでとにかく出力できたし。なぜ?は残るけど・・できたし・・。

コメントを残す

日本語でお願いします。「テスト投稿」のような短い文は無視されます。

TOP