Ajout de colonnes personnalisées aux types de messages personnalisés
-
-
J'aiposé (et répondu) lamême question (y compris comment les rendretriables): http://wordpress.stackexchange.com/questions/253680/add-custom-column-to-custom-post-type-overview-in-backendi asked (and answered) the same question (including how to make them sortable): http://wordpress.stackexchange.com/questions/253680/add-custom-column-to-custom-post-type-overview-in-backend
- 0
- 2017-01-23
- beta
-
2 réponses
- votes
-
- 2017-01-23
Les hookspour créer des colonnespersonnaliséeset leurs données associéespour untype depublicationpersonnalisé sont
manage_{$post_type}_posts_columns
etmanage_{$post_type}_posts_custom_column
respectivement,où{$post_type}
est lenom dutype depublicationpersonnalisé.Cetexemple de la documentation supprime la colonne auteuret ajoute unetaxonomieet une colonne demé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; } }
The hooks to create custom columns and their associated data for a custom post type are
manage_{$post_type}_posts_columns
andmanage_{$post_type}_posts_custom_column
respectively, where{$post_type}
is the name of the custom post type.This example from the documentation removes the author column and adds a taxonomy and meta data column:
// 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; } }
-
Mercipour ce crochet !!!C'estgénial !!Iln'y apas de documentation claire sur stackoverflow !!!: D CheersmecThank you for this hook!!! This is brilliant!! There's no clear documentation on stackoverflow!!! :D Cheers mate
- 1
- 2019-05-30
- Rodrigo Zuluaga
-
n'y a-t-il aucune optionpour définir lenuméro de colonne?comme `column_index [2]`.Parce que la colonne custom_column apparaît à lafin de la colonne.isn't there any option to set the column number? like `column_index[2]`. Because the custom_column appears at the end of the column.
- 0
- 2019-06-21
- Dilip Gupta
-
@DilipGupta $ columnsest untableau,vouspouvez réorganiser avant de le renvoyer@DilipGupta $columns is an array, you can reorder before you return it
- 1
- 2019-07-16
- fogx
-
- 2017-01-23
Jene saispas s'il s'agit demétadonnéespersonnaliséespar défaut que vous souhaitez afficher sousforme de colonnes,mais vouspouvezenvisager d'utiliser ceplugingratuit qui vouspermet d'ajouter des colonnespour afficher des champspersonnalisés. https://wordpress.org/plugins/codepress-admin-columns/
La versionpro vouspermetmême d'ajouter unfiltrage,untriet unemodificationen ligne à ces colonnes.
I'm not sure if it default custom meta data that you want to show as columns, but you could consider to use this free plugin that allows you to add columns to display custom fields. https://wordpress.org/plugins/codepress-admin-columns/
The pro version even allows you to add filtering, sorting and inline edit to those columns.
-
NE PAS UTILISER!Va casser votre site: Erreurfatale PHP: Impossible de redéclarer AC () (précédemment déclaré dans [expurgé] \\ wp-content \\themes \\ [expurgé] \\functions.php: 628) dans [expurgé] \\ wp-content \\plugins \\ codepress-admin-columns \\ api.php à la ligne 9DO NOT USE! Will break your site: PHP Fatal error: Cannot redeclare AC() (previously declared in [redacted]\\wp-content\\themes\\[redacted]\\functions.php:628) in [redacted]\\wp-content\\plugins\\codepress-admin-columns\\api.php on line 9
- 0
- 2018-11-06
- Peter Konga-Kamau
-
@ PeterKionga-Kamau c'est unproblème de compatibilité avec votrethème spécifique.L'erreur que vous avezpubliéen'apparaîtrapas avec unthème WPpar défaut (tel que vingt-vingt);J'utilise également leplugin avec lethème Diviet je letrouve assez utile@PeterKionga-Kamau this is a compatibility-issue with your specific theme. The error you posted will not appear with a default WP theme (such as twentytwenty); I also use the plugin with the Divi Theme and find it quite useful
- 0
- 2019-10-08
- Philipp
-
N'y a-t-ilpas une sorte d'espacement denoms ou l'utilisation denoms defonctionsmoinsgénériques quipourraient être utiliséspour éviter cela?Isn't there some kind of namespacing or use of less generic function names that could be used to avoid this?
- 0
- 2019-10-09
- Peter Konga-Kamau
Je l'ai déjàfaitmaisj'ai oublié lenom du hooket jene letrouvenullepart ...
Ce quej'essaie defaire,c'est d'ajouter des colonnespersonnalisées dans la liste d'untype depublicationpersonnalisé dans l'administrateur.
Parexemple,dans l'administrateur,cliquez sur articles ,je souhaite y ajouter une colonnepersonnalisée.