Ajout de colonnes personnalisées à des types d'article personnalisés

12

Je l'ai déjà fait, mais j'ai oublié le nom du crochet et je ne le trouve nulle part ...

Ce que j'essaie de faire, c'est d'ajouter des colonnes personnalisées dans la liste d'un type d'article personnalisé dans l'administrateur.

Par exemple, dans l’administrateur, cliquez sur articles , je souhaite y ajouter des colonnes personnalisées.

    
posée Chin Leung 23.01.2017 - 17:12

2 réponses

32

Les crochets permettant de créer des colonnes personnalisées et les données associées à un type de publication personnalisée sont manage_{$post_type}_posts_columns et manage_{$post_type}_posts_custom_column respectivement, où {$post_type} est le nom du type de publication personnalisé.

Cet exemple de la documentation supprime la colonne auteur et ajoute une colonne taxonomie et métadonnées:

// Add the custom columns to the book post type:
add_filter( 'manage_book_posts_columns', 'set_custom_edit_book_columns' );
function set_custom_edit_book_columns($columns) {
    unset( $columns['author'] );
    $columns['book_author'] = __( 'Author', 'your_text_domain' );
    $columns['publisher'] = __( 'Publisher', 'your_text_domain' );

    return $columns;
}

// Add the data to the custom columns for the book post type:
add_action( 'manage_book_posts_custom_column' , 'custom_book_column', 10, 2 );
function custom_book_column( $column, $post_id ) {
    switch ( $column ) {

        case 'book_author' :
            $terms = get_the_term_list( $post_id , 'book_author' , '' , ',' , '' );
            if ( is_string( $terms ) )
                echo $terms;
            else
                _e( 'Unable to get author(s)', 'your_text_domain' );
            break;

        case 'publisher' :
            echo get_post_meta( $post_id , 'publisher' , true ); 
            break;

    }
}
    
réponse donnée Dave Romsey 23.01.2017 - 17:27
0

Je ne sais pas s'il s'agit de métadonnées personnalisées que vous souhaitez afficher sous forme de colonnes, mais vous pouvez envisager d'utiliser ce plug-in gratuit qui vous permet d'ajouter des colonnes pour afficher des champs personnalisés. enlace

La version pro vous permet même d’ajouter du filtrage, du tri et des modifications en ligne à ces colonnes.

    
réponse donnée DGStefan 23.01.2017 - 20:12

Lire d'autres questions sur les étiquettes