Questo suggerimento rapido spiega come aggiungere una colonna personalizzata nelle schermate di gestione del tuo blog WordPress.
Ecco alcuni frammenti di codice che puoi utilizzare per personalizzare le colonne nelle schermate di gestione.
Puoi copiarli e incollarli nei temi del tuo tema functions.php file o scaricare il plug-in allegato a questo post.
Per prima cosa definiamo alcune funzioni di supporto che collegheremo in seguito a WordPress. I primi due aggiungono la nuova colonna (o due colonne o rimuovono quella predefinita), mentre le altre visualizzano il contenuto della colonna. In questi esempi assumiamo che tu abbia già attivato a film Tipo di messaggio personalizzato e a genere Tassonomia personalizzata. Puoi leggere come creare tipi di post personalizzati e tassonomie in un articolo precedente.
function ST4_columns_head ($ defaults) $ defaults ['first_column'] = 'Prima colonna'; / * AGGIUNGI UN'ALTRA COLONNA (OPZIONALE) * / // $ defaults ['second_column'] = 'Seconda colonna'; / * RIMUOVI COLONNA DI CATEGORIA DI DEFAULT (OPZIONALE) * / // unset ($ defaults ['categories']); / * PER RICEVERE NOMI DI COLONNE PREDEFINITE: * / // print_r ($ defaults); restituisce $ defaults; // SOLO PER la funzione CUSTOM POST TYPE del film ST4_columns_head_movies ($ defaults) $ defaults ['my_movie_column'] = 'MY MOVIE COLUMN'; restituisce $ defaults; // Funzione SCOPO GENERALE ST4_columns_content ($ column_name, $ post_ID) if ($ column_name == 'first_column') // DO STUFF FOR first_column COLUMN echo 'L'ID post è:'. $ Post_id; / * SE AVETE BISOGNO DI UN'ALTRA COLONNA - UNCOMMENT ANCHE $ defaults ['second_column'] = 'Seconda colonna'; in ST4_columns_head () * / / * if ($ column_name == 'second_column') // DO STUFF FOR second_column COLUMN * / // TAXONOMIES: CATEGORIE (POSTI E LINK), TAG E TAXONOMIE PERSONALIZZATE funzione ST4_columns_content_taxonomy ($ c , $ column_name, $ term_id) if ($ column_name == 'first_column') echo 'Il termine ID è:'. $ Term_id; // Funzione USERS ST4_columns_content_users ($ c, $ column_name, $ user_id) if ($ column_name == 'first_column') $ output. = 'L'ID utente è:'. $ User_id; if ($ column_name == 'second_column') $ output. = 'Questo è il secondo contenuto della colonna'; return $ output; // CUSTOM POSTS function ST4_columns_content_movies ($ column_name, $ movie_ID) if ($ column_name == 'my_movie_column') echo 'L'ID film è:'. $ Movie_ID;
Ora, agganciamo le funzioni in Schermate Gestisci WordPress:
add_filter ('manage_posts_columns', 'ST4_columns_head'); add_filter ('manage_posts_custom_column', 'ST4_columns_content', 10, 2);
add_filter ('manage_post_posts_columns', 'ST4_columns_head', 10); add_action ('manage_post_posts_custom_column', 'ST4_columns_content', 10, 2);
add_filter ('manage_page_posts_columns', 'ST4_columns_head', 10); add_action ('manage_page_posts_custom_column', 'ST4_columns_content', 10, 2);
add_filter ('manage_movie_posts_columns', 'ST4_columns_head_movies', 10); add_action ('manage_movie_posts_custom_column', 'ST4_columns_content_movies', 10, 2);
add_filter ('manage_edit-category_columns', 'ST4_columns_head'); add_filter ('manage_category_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
add_filter ('manage_edit-genre_columns', 'ST4_columns_head'); add_filter ('manage_genre_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
add_filter ('manage_edit-post_tag_columns', 'ST4_columns_head'); add_filter ('manage_post_tag_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
add_filter ('manage_edit-link_category_columns', 'ST4_columns_head'); add_filter ('manage_link_category_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
add_filter ('manage_media_columns', 'ST4_columns_head'); add_filter ('manage_media_custom_column', 'ST4_columns_content', 10, 2);
add_filter ('manage_users_columns', 'ST4_columns_head'); add_filter ('manage_users_custom_column', 'ST4_columns_content_users', 10, 2);
Due note finali: se una schermata di gestione non ha elementi, ad esempio non ci sono ancora tag, il contenuto della nuova colonna non viene visualizzato.
Il ST4_columns_content_users
funziona è leggermente diverso dagli altri, dal momento che restituisce una variabile PHP contenente l'HTML, invece di stampare il contenuto della colonna al volo.