Maison >Tutoriel CMS >WordPresse >Extension des colonnes de poste dans vos zones d'administration

Extension des colonnes de poste dans vos zones d'administration

William Shakespeare
William Shakespeareoriginal
2025-02-19 10:46:18971parcourir

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:

  • Les écrans d'administration de type de post WordPress sont hautement personnalisables, permettant une fonctionnalité améliorée et une expérience utilisateur.
  • Affichage de la colonne de contrôle des filtres à deux noyaux: manage_{$post_type}_posts_columns (définit les colonnes) et manage_{$post_type}_posts_custom_column (apule les données des colonnes).
  • Vous pouvez ajouter, supprimer ou réorganiser les colonnes à l'aide de 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.
  • La personnalisation des données de colonne est particulièrement précieuse pour les types de publication personnalisés, permettant l'accès aux ID de publication et aux métadonnées pour les mises à jour dynamiques de contenu ou la sélection des médias.

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.

Extending Post Columns in Your Admin Areas

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:

Extending Post Columns in Your Admin Areas

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.

Extending Post Columns in Your Admin Areas

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn