web-dev-qa-db-fra.com

Comment gérer les dépendances wp_enqueue_style définies dans la mise en file d'attente du style de thème parent

Le fichier style.css de mon thème parent dépend de bootstrap.css, qui fait également partie du thème parent.

Depuis les thèmes parents functions.php:

wp_enqueue_style('bootstrap', get_template_directory_uri().'/css/bootstrap.min.css);
wp_enqueue_style('style', get_stylesheet_uri(), array('bootstrap'));

Lorsque vous utilisez un thème enfant, les parents style.css sont chargés en premier, bien qu’il soit dépendant du bootstrap.

La fonction de mise en file d'attente de style de mon enfant ressemble à ceci:

function child_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', 'parent-bootstrap');
}

Et même lors de la définition d'une dépendance lors de la mise en file d'attente du style parent, celle-ci semble être ignorée et le fichier style.css est chargé avant l'amorçage.

function child_enqueue_styles() {
    wp_enqueue_style( 'parent-bootstrap', get_template_directory_uri().'/css/bootstrap.min.css');
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', 'parent-bootstrap');
}

Je ne sais pas comment gérer cela sans changer le thème parent

2
FlyingNimbus

Je suis sûr que vous l'avez manqué, mais le paramètre de dépendance devrait être un tableau et non une chaîne.

Votre fonction de mise en file d'attente devrait donc être:

function child_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', array('bootstrap'));
}

ou:

function child_enqueue_styles() {
    wp_enqueue_style( 'parent-bootstrap', get_template_directory_uri().'/css/bootstrap.min.css');
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', array('parent-bootstrap'));
}

Référence: wp_enqueue_style

2
Tunji