web-dev-qa-db-fra.com

script de mise en file d'attente sur une page d'archive de type publication personnalisée

Comment puis-je mettre en file d'attente un script sur l'en-tête si l'utilisateur se trouve sur une page d'archive d'un type de publication personnalisé? Le type de publication personnalisé s'appelle limitedrun et la page s'appelle archive-limitedrun.php.

J'ai essayé cela et je n'ai eu aucune réponse:

function opby_theme() {
wp_register_script('responsive-img', get_template_directory_uri() .'/js/responsive-img.min.js', array('jquery'));
wp_enqueue_script('responsive-img');
wp_enqueue_style( 'opby', get_stylesheet_uri() );
wp_register_style('googleFonts', 'https://fonts.googleapis.co/css?family=Roboto+Slab:400,100|Bitter');
wp_enqueue_style( 'googleFonts');
if (is_singular('limitedrun') ) {
wp_register_style('ltd-run-font', 'https://fonts.googleapis.com/css?family=Roboto:100,500');
wp_enqueue_style( 'ltd-run-font');
}
}
add_action( 'wp_enqueue_scripts', 'opby_theme' );  
1
Gregory Schultz

Vous pouvez économiser votre temps et votre charge de serveur en n'utilisant pas wp_register_script et wp_register_style lorsque vous n'en avez pas besoin définitivement. wp_enqueue_style et wp_enqueue_script font le même travail eux-mêmes lorsqu'ils ne comportent pas de fonctions excessives.

Voici un code plus facile et plus lisible, mis à jour avec la réponse acceptée par @vancoder:

<?php
function opby_theme()
{
    wp_enqueue_script(
        'responsive-img',
         get_template_directory_uri() .'/js/responsive-img.min.js',
         array('jquery')
    );

    wp_enqueue_style(
        'opby',
        get_stylesheet_uri()
    );

    wp_enqueue_style(
        'googleFonts',
        'https://fonts.googleapis.co/css?family=Roboto+Slab:400,100|Bitter'
    );

    if ( is_post_type_archive('limitedrun') ) {
        wp_enqueue_style(
            'ltd-run-font',
            'https://fonts.googleapis.com/css?family=Roboto:100,500'
        );
    }
}
add_action( 'wp_enqueue_scripts', 'opby_theme' );
4
Max Yudin

is_singular ne gère pas les archives.

Essayer

is_post_type_archive( 'limitedrun' );
3
vancoder