J'utilise ce code et je ne sais pas pourquoi le script n'est pas chargé. Je crois que la syntaxe est correcte, car j'essaie de charger le script uniquement sur le type de message personnalisé "événements".
add_action( 'login_enqueue_scripts', 'wpse_login_enqueue_scripts', 10 );
function wpse_login_enqueue_scripts() {
if( is_single() && get_post_type()=='events' ){
wp_enqueue_script( 'bootstrap', 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js', array('jquery'), '3.3.5', true );
}
}
Pour mettre en file d'attente des scripts sur le serveur frontal, le raccordement doit être wp_enqueue_scripts
et non login_enqueue_scripts
.
En outre, un meilleur moyen de savoir si vous utilisez un seul type de publication personnalisé consiste à utiliser is_singular()
et de transmettre le type de publication que vous souhaitez vérifier:
if ( is_singular( 'events' ) ) {
}
get_post_type()
s'appuie sur l'objet $post
global et non sur la requête principale. Ils sont souvent identiques, mais dans certaines circonstances, l’objet $post
peut ne pas être identique à la publication actuelle.
ce hook n'est activé que sur la page de connexion:
https://developer.wordpress.org/reference/hooks/login_enqueue_scripts/
à utiliser sur une page de publication personnalisée, utilisez l'action wp_enqueue_scripts
.
Vous raccordez cette fonction à 'login_enqueue_scripts'
(qui ne fonctionne que sur la page de connexion); vous devriez le raccrocher à 'wp_enqueue_scripts'
à la place.
( is_single() && get_post_type()=='events' )
fonctionnerait également, mais comme l'a souligné Jacob Peattie dans une autre réponse, is_singular( 'events' )
est le meilleur moyen de rechercher un message personnalisé de type message personnalisé.
Enfin, vous devez renommer la fonction wpse_login_enqueue_scripts()
en wpse_events_enqueue_scripts()
afin de la rendre plus descriptive et moins déroutante:
add_action( 'wp_enqueue_scripts', 'wpse_events_enqueue_scripts', 10 );
function wpse_events_enqueue_scripts() {
if ( is_single() && 'events' == get_post_type() ) {
wp_enqueue_script( 'bootstrap', 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js', array('jquery'), '3.3.5', true );
}
}