1

メンバーというカスタム投稿タイプを作成しました。

次に、このカスタム投稿タイプの表示をカスタマイズして、列に入力されたカスタム メタを表示したいと考えました。

列は表示されていますが、データが表示されておらず、その理由がわかりません。

add_filter( 'manage_edit-members_columns', 'my_columns_filter', 10, 1 );

function my_columns_filter( $columns ) {
$column_phone = array( 'phone' => 'Phone Number' );
$column_email = array( 'email' => 'Email Address' );
$column_membertype = array( 'member_type' => 'Member Type' );
$columns = array_slice( $columns, 0, 2, true ) + $column_phone + array_slice( $columns, 2, NULL, true );
$columns = array_slice( $columns, 0, 3, true ) + $column_email + array_slice( $columns, 3, NULL, true );
$columns = array_slice( $columns, 0, 4, true ) + $column_membertype + array_slice( $columns, 4, NULL, true );
return $columns;
}

add_action( 'manage_members_custom_column', 'my_column_action', 10, 2 );

function my_column_action( $column, $post_id ) {
global $post;
switch ( $column ) {
    case 'phone':
        echo get_post_meta($post_id, '_cricketss_phone', TRUE);
        break;
    case 'email':
        echo get_post_meta($post_id, '_cricketss_email', TRUE);
        break;
    case 'member_type':
        echo get_post_meta($post_id, '_cricketss_phone', TRUE);
        break;
}
}

頭を上げていただければ幸いです。

4

1 に答える 1

0

コードがない状態で撮影しregister_post_typeます。これが試すべきことです

  1. まだ追加していない場合は追加'hierarchical' => false してください register_post_type

  2. 変化する

    add_action( 'manage_members_custom_column', 'my_column_action', 10, 2 );
    

    add_action( 'manage_posts_custom_column', 'my_column_action', 10, 2 );
    

私はあなたの問題が私が述べたポイント2にあると強く感じています。

コーデックスは次のように述べています。

manage_edit-$ {post_type} _columnsフィルターと組み合わせると、カスタム列をリストの投稿/ページ/カスタム投稿タイプのページに追加できます。ここで説明するフィルターは、組み込みの投稿タイプとカスタムの投稿タイプの両方で機能します。カスタム投稿タイプの'hierarchical'=> trueの場合、使用する正しいアクションフックはmanage_pages_custom_columnであることに注意してください。

于 2012-02-02T14:58:54.120 に答える