WordPress 3.8 a introduit dans le noyau le plugin MP6 qui utilise entre autres une police iconique appelée Dashicons pour afficher les polices dans le tableau de bord.
Maintenant, il est bien connu que register_post_type a un argument 'menu_icon'
qui permet de spécifier une icône personnalisée pour l'entrée du menu d'administration CPT.
Dans mes plugins / thèmes, j'utilise souvent cet argument avec mes images d'icônes personnalisées qui sont normalement sombres car avant le menu d'administration de la version 3.8 avait un fond clair. Avec l'arrière-plan du menu sombre par défaut dans WP 3.8, mes icônes deviennent presque invisibles.
Cela mis à part, je pense que l'utilisation des nouveaux dashicons pour mon CPT sera cool.
Après quelques recherches, je sais que je peux simplement utiliser le CSS des dashicons, quelque chose comme
#menu-posts-mycpt div.wp-menu-image:before { content: "\f226"; }
Cependant, l'utilisation à la fois de l' 'menu_icon'
argument de register_post_type
et du CSS précédent affichera les deux icônes dans WP 3.8 et une icône + un caractère étrange dans WP 3.8-, et sans utilisation'menu_icon'
argument , sur les anciennes versions, l'icône par défaut est utilisée.
Je sais que je peux ajouter conditionnellement 'menu_icon'
dans register_post_type
pour WP 3.8- versions et ajouter conditionnellement précédente pour WP css supérieure à 3,8, mais:
- cela implique d'ajouter du code (2 instructions conditionnelles) pour chaque CPT enregistré, donc la mise à jour des plugins / thèmes est un travail assez difficile
- il me semble plus une solution de contournement qu'une solution élégante
Donc, les questions sont:
Est-il possible d'utiliser dashicons css pour WP 3.8+ et d'utiliser une configuration d'image personnalisée via 'menu_icon'
param pour les versions précédentes d'une manière "plus simple" qui n'implique pas d'ajouter 2 conditionnelles pour chaque CPT enregistré?
Et, si c'est le cas, est-il possible de le faire de manière automagique directement register_post_type
sans aucun code supplémentaire?
menu_icon
vous ne pouvez pas utiliser l'URL de l'image pour les versions précédentes ... mais qui se soucie du passé? :)