J'essaie de charger plusieurs scripts et feuilles de style dans un plugin que je crée. Je veux charger des scripts dans plusieurs CPT au sein de l'administrateur. J'ai eu jusqu'ici:
function fhaac_admin_enqueue_scripts(){
global $pagenow, $typenow;
if ( ($pagenow == 'post.php' || $pagenow == 'post-new.php') && $typenow == 'fhaac' ){}
}
Les scripts sont chargés dans le fhaac, mais rien d’autre. Je ne sais pas comment ajouter plusieurs CPT. J'ai essayé de les ajouter dans un tableau, mais cela n'a pas fonctionné.
De l'aide serait grandement appréciée.
À votre santé
Il existe une fonction intégrée que vous pouvez utiliser au lieu de globals. La fonction get_current_screen()
vous permet d'obtenir les informations associées à la page en cours.
Une de ses valeurs de retour est post_type
. Ainsi, vous pouvez vérifier un tableau de types de publications pour voir si quelqu'un correspond.
function fhaac_admin_enqueue_scripts(){
$screen = get_current_screen();
if (
in_array( $screen->post_type, array('fhaac','blabla')) &&
$screen->base == 'post'
) { // Do something }
}
Il y a un travail très simple autour de:
Chargez-le partout et exécutez le code uniquement si la page correspond
Par exemple, sur mon site, j'ai un CPT nommé projects
et sur la balise body, les éléments suivants:
<body
class="wp-admin wp-core-ui js jetpack-connected edit-php auto-fold admin-bar post-type-project branch-4-8 version-4-8 admin-color-fresh locale-en-us multisite customize-support sticky-menu svg">
Je sais donc que ma liste de messages correspondra à body.edit-php
et body.post-type-project
Donc pour CSS:
body.post-type-project.edit-php .... {
....
}
Et je peux faire la même vérification en javascript avec jQuery