web-dev-qa-db-fra.com

Mettre en file d'attente les enfants CSS à charger après l'amorçage du CDN

Je suis nouveau dans le développement de thèmes Wordpress et j'ai décidé de créer un thème à partir de rien.

Installé sur localhost, j'ai ajouté du code à mon fichier functions.php pour charger Bootstrap.min.css à partir d'un CDN, puis j'ai ajouté mon propre appel CSS pour le style des éléments non Bootstrap.

Un problème que je rencontre est que le CSS Bootstrap semble avoir la priorité sur le fichier CSS personnalisé. Par exemple, il y a une marge de 32px en haut de la page.

Mon functions.php est comme suit:

<?php 
//Load CSS Files
function enqueue_theme_styles() {
  wp_enqueue_style( 'Bootstrap', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css' );
  wp_enqueue_style( 'Custom-Theme', get_template_directory_uri() . '/css/theme-style.css' );
}
add_action('wp_enqueue_scripts', 'enqueue_theme_styles');
?>

J'ai regardé autour de moi et il a été suggéré d'ajouter des dépendances pour résoudre le problème d'ordre de chargement. J'ai donc essayé d'ajouter ce qui suit à la fin de mon thème enfant:

, array('Bootstrap');

Cela n'a pas aidé non plus.

Si cela peut être utile à quiconque, j'appelle ce code via <?php wp_head(); ?> dans mon fichier header.php (à ma connaissance, il s'agit d'un standard).

Est-ce que quelqu'un peut aider sur ceci s'il vous plaît?

1
alfieph

L'ajout de la dépendance devrait fonctionner.

Cependant, vous n’appelez pas correctement votre fichier de styles de thème. Vous devez déplacer votre fichier theme-style.css vers le dossier racine du thème lui-même et nommez-le style.css.

Donc, votre fonction devrait ressembler à ceci:

function my_enqueues() {
    wp_enqueue_style( 'bootstrap-css', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css' );
    wp_enqueue_style( 'theme-css', get_stylesheet_uri(), array( 'bootstrap-css' ) );
}
add_action( 'wp_enqueue_scripts', 'my_enqueues' );

Cela correspond également à la section Thème sur Incluant CSS & JavaScript .

3
Cedon