Maison >Tutoriel CMS >WordPresse >Extension des colonnes de poste dans vos zones d'administration
Ce didacticiel montre comment personnaliser les écrans d'administration WordPress pour vos types de publication en modifiant les colonnes affichées. Nous allons commencer par examiner les listes de types de publication WordPress par défaut, puis explorer les crochets nécessaires pour la manipulation des colonnes. Enfin, nous intégrerons les méta-données supplémentaires dans ces colonnes.
L'objectif est de vous permettre d'étendre et de modifier vos écrans d'administration de type post, fournissant aux utilisateurs plus d'informations et d'actions.
Concepts clés:
manage_{$post_type}_posts_columns
(définit les colonnes) et manage_{$post_type}_posts_custom_column
(apule les données des colonnes). manage_{$post_type}_posts_columns
. manage_{$post_type}_posts_custom_column
vous permet de contrôler le contenu dans chaque colonne, en utilisant des variables $column
et $post_id
. Interface de gestion de post WordPress:
Lors de la création de types de publication (y compris des "publications" et des "pages"), WordPress génère une interface administrative pour la gestion. Ceci est généralement accessible via le menu d'administration principale du backend.
L'image ci-dessus montre le menu "Posts" et son sous-menu "Tous les messages". Sélection de l'ouverture de l'écran d'administration Post:
Cet écran répertorie tous les articles du type sélectionné.
Extension de l'interface post-gestion:
Pour améliorer cette interface et fournir des fonctionnalités supplémentaires, en particulier pour les types de publication personnalisés avec des méta-données supplémentaires, nous personnaliserons les colonnes affichées.
Personnalisation et peuplement des colonnes de post:
WordPress affiche les colonnes par défaut (par exemple, titre, auteur, date pour les pages). Pour modifier cela, utilisez deux filtres:
1. Personnalisation des colonnes (manage_{$post_type}_posts_columns
):
Ce filtre modifie les colonnes affichées. Remplacez {$post_type}
par le nom de votre type de message (par exemple, page
, post
, services
). Le filtre reçoit un tableau associatif ($columns
) des noms de colonne de mappage aux titres. Vous pouvez ajouter, supprimer ou réorganiser les éléments dans ce tableau.
Exemple (modification des colonnes de page):
<code class="language-php">function manage_page_columns($columns) { unset($columns['date']); unset($columns['comments']); unset($columns['author']); $columns['page_featured_image'] = 'Featured Image'; $columns['page_template'] = 'Template'; $columns['page_content'] = 'Content'; return $columns; } add_filter('manage_page_posts_columns', 'manage_page_columns');</code>
2. Colonnes de remplissage (manage_{$post_type}_posts_custom_column
):
Ce filtre remplit le contenu de chaque colonne. Il reçoit deux paramètres: $column
(l'ID de colonne) et $post_id
.
Exemple (colonnes de page de population):
<code class="language-php">function populate_page_columns($column, $post_id) { if ($column == 'page_featured_image') { if (has_post_thumbnail($post_id)) { echo get_the_post_thumbnail($post_id, 'thumbnail'); } else { echo 'No featured image'; } } elseif ($column == 'page_template') { $template = get_post_meta($post_id, '_wp_page_template', true); $templates = get_page_templates(); echo isset($templates[$template]) ? 'Using: ' . $templates[$template] : 'Default Template'; } elseif ($column == 'page_content') { $page = get_post($post_id); if ($page) { echo wp_trim_words(apply_filters('the_content', $page->post_content), 20, '...'); // Show a trimmed excerpt } } } add_action('manage_page_posts_custom_column', 'populate_page_columns', 10, 2);</code>
L'exemple montre un extrait réduit du contenu de la page pour la concision. Le contenu complet peut être affiché, mais il peut être lourd.
Conclusion:
Personnaliser les colonnes d'administration fournit un contrôle significatif sur l'interface utilisateur, en particulier pour les types de publication personnalisés. Cela permet d'afficher des informations pertinentes et potentiellement d'ajouter des actions dynamiques directement dans la liste d'administration. N'oubliez pas de remplacer page
par votre type de publication spécifique et ajustez le code pour répondre à vos besoins. Les exemples fournis offrent une base solide pour construire des personnalisations plus complexes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!