J'ai enregistré un type de message personnalisé 'featured_post'
. Je cherche un moyen de vérifier si la page d'accueil du blog contient des articles 'featured_post'
et si un fichier javascript a été chargé.
Les articles "Featured_post" créeront un curseur en haut de la page d'accueil du blog. Je travaillais avec des posts collants, mais je ne savais pas comment charger le script de manière conditionnelle s'il y avait des posts de CPT 'Featured_post'.
C'est le code qui a fonctionné pour les posts collants:
if ( is_front_page() && is_sticky() ) {
wp_enqueue_script ('flexslider-js');
}
Cependant, cela ne semble pas fonctionner et je ne sais pas pourquoi:
if ( is_front_page() && get_post_type('featured_post') ) {
wp_enqueue_script ('flexslider-js');
}
Merci d'avance.
Je suis au travail en ce moment (désolé patron), je ne peux donc pas tester cela, mais l'extrait de code ci-dessous devrait être le moyen approprié de tester si le type de message "vedette_post" existe, puis de mettre en file d'attente le script s'il en contient. des postes.
if ( is_front_page() && post_type_exists('featured_post') ) { // We are at the front page, and the post type 'featured_post' is registered.
$hasposts = get_posts( 'post_type=featured_post' ); // lets check if there is any posts in the 'featured_post' post type.
if( $hasposts ) { // If we found some posts, lets enqueue the script
wp_enqueue_script ('flexslider-js');
}
}
WordPress a une fonction d'assistance pour faire exactement cela: post_type_exists()
Exemple:
if ( post_type_exists( 'book' ) ) {
echo 'the Book post type exists';
}