recherche
MaisonTutoriel CMSWordPresseFiltres d'administration WordPress personnalisés

Cet article explique comment utiliser les filtres WordPress pour personnaliser l'écran Post Administration. Nous couvrirons les filtres intégrés de WordPress et vous montrerons comment créer des filtres personnalisés pour améliorer les fonctionnalités.

Concepts clés

  • WordPress fournit des filtres par défaut sur l'écran d'administration Post pour afficher des publications en fonction de critères spécifiques. Ces filtres sont extensibles.
  • De nouveaux filtres sont ajoutés à l'aide des crochets restrict_manage_posts et pre_get_posts. Ceux-ci permettent de filtrer les publications par divers critères.
  • Les filtres personnalisés pour les formats de post et les auteurs peuvent être créés en ajoutant du code au fichier functions.php de votre thème (ou un plugin).
  • Le filtre pre_get_posts modifie la requête de la base de données, contrôlant les publications affichées.
  • Les filtres personnalisés améliorent l'expérience utilisateur, ajoutent des fonctionnalités et maintiennent le code propre.

Filtrage Posts: les bases

WordPress propose des filtres par défaut sur l'écran d'administration (comme le filtrage de date, illustré ci-dessous). Les thèmes et les plugins peuvent en ajouter plus. Ces filtres rétrécissent la liste des articles en fonction des critères spécifiés.

Customized WordPress Administration Filters

Création de filtres personnalisés

Bien que WordPress propose des filtres intégrés, vous avez souvent besoin de ceux personnalisés pour une meilleure expérience utilisateur. Deux crochets sont essentiels:

  • restrict_manage_posts: ajoute de nouveaux contrôles de filtre au haut de l'écran d'administration.
  • pre_get_posts: modifie la requête avant son exécution, filtrant les messages affichés.

Exemple: filtrage par auteur et au format post

Créons des filtres pour les auteurs et les formats post. Imaginez un site Web où les publications ont des formats et des auteurs qui ont manqué. L'écran d'administration par défaut peut être écrasant. Nous ajouterons des menus déroulants pour un filtrage plus facile.

ajoutant des menus déroulants (restrict_manage_posts)

Ajoutez le code suivant au fichier functions.php de votre thème (ou un plugin):

Filtre par auteur:

function add_author_filter() {
    global $post_type;
    if ($post_type == 'post') {
        $user_args = array(
            'show_option_all' => 'All Authors',
            'orderby' => 'display_name',
            'order' => 'ASC',
            'name' => 'author_filter',
            'who' => 'authors',
            'include_selected' => true
        );
        if (isset($_GET['author_filter'])) {
            $user_args['selected'] = (int) sanitize_text_field($_GET['author_filter']);
        }
        wp_dropdown_users($user_args);
    }
}
add_action('restrict_manage_posts', 'add_author_filter');

Filtre par format post:

function add_post_format_filter() {
    global $post_type;
    if ($post_type == 'post') {
        $post_formats_args = array(
            'show_option_all' => 'All Formats',
            'orderby' => 'NAME',
            'order' => 'ASC',
            'name' => 'post_format_filter',
            'taxonomy' => 'post_format'
        );
        if (isset($_GET['post_format_filter'])) {
            $post_formats_args['selected'] = sanitize_text_field($_GET['post_format_filter']);
        }
        wp_dropdown_categories($post_formats_args);
    }
}
add_action('restrict_manage_posts', 'add_post_format_filter');

Cela ajoute deux listes déroulantes à l'écran de la liste des messages.

Customized WordPress Administration Filters

Filtrage de la liste de publication (pre_get_posts)

Maintenant, faisons fonctionner les listes déroulantes:

Filtrage par auteur:

function filter_posts_by_author($query) {
    global $post_type, $pagenow;
    if ($pagenow == 'edit.php' && $post_type == 'post' && isset($_GET['author_filter'])) {
        $author_id = sanitize_text_field($_GET['author_filter']);
        if ($author_id != 0) {
            $query->set('author', $author_id);
        }
    }
}
add_action('pre_get_posts', 'filter_posts_by_author');

Filtrage par format post:

function filter_posts_by_format($query) {
    global $post_type, $pagenow;
    if ($pagenow == 'edit.php' && $post_type == 'post' && isset($_GET['post_format_filter'])) {
        $post_format = sanitize_text_field($_GET['post_format_filter']);
        if ($post_format != 0) {
            $query->set('post_format', $post_format);
        }
    }
}
add_action('pre_get_posts', 'filter_posts_by_format');

Ces fonctions modifient la requête pour inclure uniquement les publications correspondant à l'auteur ou au format de poste sélectionné.

Customized WordPress Administration Filters

Conclusion

Cela a amélioré votre administrateur WordPress avec des filtres personnalisés. Vous pouvez l'adapter à Filtre par d'autres attributs de post (reportez-vous à la documentation de la classe de requête WordPress). N'oubliez pas de toujours désinfecter les entrées des utilisateurs pour éviter les vulnérabilités de sécurité.

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
Comment WordPress se compare-t-il aux autres plates-formes CMS populaires?Comment WordPress se compare-t-il aux autres plates-formes CMS populaires?May 02, 2025 am 12:18 AM

WordPressExcelsInasonEaseOfUSEADAdaptabilité, fabriquantidealforbeginnersendsmalltomedium-sizedBusiness.1) faciliteofUse: wordpressisuseur-friendly.2) Sécurité: drupalleadswithstrongsecurityfeatures.3) Performance: GhostoFersExCellantPerformanceDueToDode.js.4) échelle Scale: fantôme

Pouvez-vous utiliser WordPress pour construire un site d'adhésion?Pouvez-vous utiliser WordPress pour construire un site d'adhésion?May 01, 2025 am 12:08 AM

Oui, vous utilisezwordpresstobuildamemberShipSite.

WordPress nécessite-t-il des connaissances de codage à utiliser comme CMS?WordPress nécessite-t-il des connaissances de codage à utiliser comme CMS?Apr 30, 2025 am 12:03 AM

Vous n'avez pas besoin de connaissances en programmation pour utiliser WordPress, mais la maîtrise de la programmation peut améliorer l'expérience. 1) Utilisez CSS et HTML pour ajuster le style de thème. 2) Les connaissances PHP peuvent modifier les fichiers de rubrique et ajouter des fonctions. 3) Les plug-ins personnalisés et les balises de méta peuvent optimiser le référencement. 4) Faites attention à la sauvegarde et à l'utilisation des sous-thèmes pour éviter les problèmes de mise à jour.

Quelles sont les considérations de sécurité lors de l'utilisation de WordPress?Quelles sont les considérations de sécurité lors de l'utilisation de WordPress?Apr 29, 2025 am 12:01 AM

ToseCureAwordPressSite, suivez les personnes

Comment WordPress se compare-t-il aux autres constructeurs de sites Web?Comment WordPress se compare-t-il aux autres constructeurs de sites Web?Apr 28, 2025 am 12:04 AM

WordPressExcelSoverotherwebsiteBuildersDuetOitsFlexibility, Svalible, andOpen-Sourcenatur.1) It'saversatilecmswitHExtensiveCustomationOptionsViathemeSandPlugins.2)

5 plugins WordPress pour les développeurs à utiliser en 20255 plugins WordPress pour les développeurs à utiliser en 2025Apr 27, 2025 am 08:25 AM

Sept plugins WordPress incontournables pour le développement de sites Web 2025 La construction d'un site Web WordPress de haut niveau en 2025 exige la vitesse, la réactivité et l'évolutivité. La réalisation de cela dépend efficacement souvent de la sélection stratégique des plugins. Cet article Highlig

Pour quoi utiliseriez-vous WordPress?Pour quoi utiliseriez-vous WordPress?Apr 27, 2025 am 12:14 AM

WordPressCanBeUsedForvariousPurposesBeyondBlogging.1) e-commerce: avec Woocommerce, ItCanBeComeAfonLonnestore.2) Adhésion: PluginslikeMemberpressSenableExClusiveContentareas.3) Portfoliosites: ThemeSlikeasTraallowstunninglay

WordPress est-il bon pour créer un site Web de portfolio?WordPress est-il bon pour créer un site Web de portfolio?Apr 26, 2025 am 12:05 AM

Yes,WordPressisexcellentforcreatingaportfoliowebsite.1)Itoffersnumerousportfolio-specificthemeslike'Astra'foreasycustomization.2)Pluginssuchas'Elementor'enableintuitivedesign,thoughtoomanycanslowthesite.3)SEOisenhancedwithtoolslike'YoastSEO',boosting

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

MantisBT

MantisBT

Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.