2017-01-24 20 views
0

私のカスタム投稿タイプcotaの管理テーブルリストに列を追加しようとしていますが、現在の分類法tipoが印刷されていません。投稿IDに基づいてカスタム投稿タイプのタクソノミを取得

はここに現在のコードです:

function la_set_cota_columns($columns){ 

    $newColumns = array(); 
    $newColumns['title'] = 'Título da Cota'; 
    $newColumns['comissao'] = 'Comissão'; 
    $newColumns['proprietario'] = 'Proprietário'; 
    $newColumns['vencimento'] = 'Vencimento'; 
    $newColumns['tipo'] = 'Tipo de Cota'; 

    return $newColumns; 
} 
add_filter('manage_cota_posts_columns', 'la_set_cota_columns'); 


function la_cota_custom_column($column, $post_id){ 
    $content = get_post_meta($post_id); 

    switch($column){ 

     case 'comissao' : 
     echo $content['comissao'][0]; 
     break; 

     case 'proprietario' : 
     echo $content['proprietario'][0]; 
     break; 

     case 'vencimento' : 
     echo $content['vencimento'][0]; 
     break; 

     case 'tipo': 
     echo get_metadata('cota', $post_id, 'tipo', $single = true); 
     break; 
    } 

} 
add_action('manage_cota_posts_custom_column', 'la_cota_custom_column', 10, 2); 

実際の結果がhere

事前のおかげで多くのことを見つけることができます。

答えて

1

ですから、表に記載されている現在のポストに関連した用語を印刷しようとしている...そのように、あなたの代わりにwp_get_post_terms機能を使用する必要が:

$term_names = wp_get_post_terms($post_id, 'tipo', array('fields' => 'names')); // returns an array of term names 
echo implode(', ', $term_names); 

アンスに関するただ一つの小さなコメントあなたが使用した関数呼び出し:最後のパラメータはオプションです。つまり、を渡すか、まったく何も渡すことができません。これを省略すると、デフォルト値はfalseになります。このことができます

get_metadata('cota', $post_id, 'tipo', true); 

希望:あなたは、関数呼び出しを行うとき、しかし、あなたはデフォルト値を渡しません!

+0

ありがとうございました!出来た!最後のパラメータget_metadataについて、私はデフォルトのパラメータがfalseだと思った!しかし、ありがとう。 –

+0

素晴らしいですが、あなたは実際にはデフォルト値についてです。コードをコーデックスの関数呼び出しのコピーペーストとして使用しました。私は自分の答えを適応させました。それは実際にはデフォルトでは間違っています - それは残念です。 – MacPrawn

+0

うーん、いいよ!はい、WPコーデックスは私がWordpressの専門家ではないので、私を大いに助けてくれます。しかし、ありがとう! –

関連する問題