Dette raske tipset forklarer hvordan du legger til en egendefinert kolonne i Behandle skjermene til WordPress-bloggen din.
Her er noen kodestykker du kan bruke til å tilpasse kolonnene i Behandle skjermene dine.
Du kan kopiere og lime dem inn i temaet ditt functions.php filen, eller last ned pluginet som er vedlagt dette innlegget.
Først, la oss definere noen hjelpefunksjoner som vi vil koble til WordPress senere. De to første legger til den nye kolonnen (eller to kolonner, eller fjern en standard), mens de andre viser kolonneinnholdet. I disse eksemplene antar vi at du allerede har aktivert a film Tilpasset innleggstype og a sjanger Tilpasset taksonomi. Du kan lese om å lage egendefinerte innleggstyper og taksonomier i en tidligere artikkel.
funksjon ST4_columns_head ($ defaults) $ defaults ['first_column'] = 'Første kolonne'; / * ADD ANOTHER COLUMN (VALGFRI) * / // $ standard ['second_column'] = 'Andre kolonne'; / * FJERN DEFAULT CATEGORY COLUMN (VALGFRI) * / // unset ($ standardverdier ['kategorier']); / * Å FÅ DEFAULTS KOLOMNAMMER: * / // print_r ($ standardverdier); returnere $ standardinnstillinger; / / KUN FOR film KUNSTSTILSTYPE-funksjon ST4_columns_head_movies ($ standard) $ standardinnstillinger ['my_movie_column'] = 'MINE FILKOLUMN'; returnere $ standardinnstillinger; // GENERELT FORMÅL-funksjon ST4_columns_content ($ column_name, $ post_ID) if ($ column_name == 'first_column') // GJØR STUFF FOR first_column COLUMN echo 'Post-ID er:'. $ POST_ID; / * HVIS DU TRENGER EN ANNEN KOLOM - UNCOMMENT OGSÅ $ standard ['second_column'] = 'Second Column'; i ST4_columns_head () * / / * hvis ($ column_name == 'second_column') // DO STUFF for second_column COLUMN * / // TAXONOMIER: KATEGORIER (POSTER OG LINKER), TAGER OG TJENESTE TAXONOMIER Fungerer ST4_columns_content_taxonomy ($ c , $ column_name, $ term_id) if ($ column_name == 'first_column') echo 'Begrepet ID er:'. $ Term_id; // BRUKER-funksjonen ST4_columns_content_users ($ c, $ column_name, $ user_id) if ($ column_name == 'first_column') $ output. = 'Bruker-ID er:'. $ User_id; hvis ($ column_name == 'second_column') $ output. = 'Dette er det andre kolonneinnholdet'; returnere $ output; // CUSTOM POSTS funksjonen ST4_columns_content_movies ($ column_name, $ movie_ID) hvis ($ column_name == 'my_movie_column') echo 'Filmen ID er:'. $ Movie_ID;
Nå, la oss koble funksjonene til WordPress Manage Screens:
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);
To siste notater: Hvis en administreringsskjerm har ingen elementer, for eksempel er det ingen merker ennå, innholdet i den nye kolonnen vises ikke.
De ST4_columns_content_users
funksjonen er litt annerledes enn de andre, siden det returnerer en PHP-variabel som inneholder HTML, i stedet for å skrive ut kolonneinnholdet i fly.