Wordpressの管理者欄にACFポストオブジェクトフィールドを追加します。

schrdr:

私は2つのACFのフィールドを持っている書籍のカスタムポストタイプを持っている、book_titlebook_author私は、同じフィールド名を持つカスタムポストタイプの通路での2つのフィールドに、ACFポストオブジェクトとして、本の中で引っ張るブックからの通路用に別のカスタムポストタイプを持っています。

私が表示できるようにしたいbook_titlebook_author通路のカスタムポストタイプのリストの列としてフィールドを。私は現在、本のタイトルに引くことができるが、私はポストのタイトルではなく、実際のグラブいますので、唯一のthatsのbook_titleポストからフィールドを。このようなポストオブジェクトからグラブフィールドに方法はありますし、カラムとして、それらを設定しますか?

ここに私の通路カスタムポストタイプのファイルから私の現在のコードは次のとおりです。

function add_acf_columns($columns)
{
    return array_merge($columns, array(
        'book_title' => __('Book Title') ,
        'book_author' => __('Book Author')
    ));
}
add_filter('manage_passages_posts_columns', 'add_acf_columns');


function passages_custom_column($column, $post_id)
{
    switch ($column)
    {
        case 'book_title':
            echo get_the_title(get_field('book_title', $post_id));
        break;
        case 'book_author':
            echo get_post_meta($post_id, 'book_author', true);
        break;
    }
}
add_action('manage_passages_posts_custom_column', 'passages_custom_column', 10, 2);
schrdr:

私はXhynkの答えを変更することでこれを解決しました。

あなたはパッセージポストでのブックポストオブジェクトのIDつかむした後bookフィールドを、あなたが使用することができます)(ACFのget_fieldをつかむためにtitleauthorブックからの値自体を掲示した後、列にそれらの値を渡します。

// add columns to passages list
add_filter('manage_passages_posts_columns', 'add_acf_columns');
function add_acf_columns($columns)
{
    return array_merge($columns, array(
        'book_title' => __('Book Title') ,
        'book_author' => __('Book Author')
    ));
}

// add title and author to passages list columns
add_action('manage_passages_posts_custom_column', 'passages_custom_column', 10, 2);
function passages_custom_column($column, $post_id) {
    switch( $column ){
        case 'book_title':
            $book_object = get_field( 'book', $post_id );
            $book_title = get_field('title', $book_object->ID);
            echo ($book_title) ? $book_title : '';
            break;
        case 'book_author':
            $book_object = get_field( 'book', $post_id );
            $book_author = get_field('author', $book_object->ID);
            echo ($book_author) ? $book_author : '';
            break;
    }
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=14122&siteId=1