Je viens d'apprendre sur la création de thèmes enfants auprès de le Codex , il est dit d'ajouter
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
et
function theme_enqueue_styles() {
$parent_style = 'parent-style';
wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/style.css',
array( $parent_style )
);
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
dans le fichier functions.php
de mon thème enfant, mais cela ne réglait pas le problème lorsque notre thème parent comportait plus d'une feuille de style (.css files
). (Dans mon cas, le thème vingt-quatorze a deux style.css
et rtl.css
) et deux autres dans le dossier/css nommé editor-style.css
et ie.css
Donc, ce que je dois changer dans le code ci-dessus pour charger les deux stylesheets
.
J'ai traversé cette question mais cela ne réglait pas mon problème.
Vingt-quatorze charge ses feuilles de style différemment en ce sens que la feuille de style principale est dépendante de la feuille de style genericon et je suis sûr que c'est le problème que vous rencontrez. (sinon, veuillez mettre à jour votre question avec les détails appropriés} _)
Vous pouvez changer la façon dont vous mettez votre style en file d'attente dans le premier bloc de code comme suit
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', array( 'genericons' ) );
Vous avez un malentendu sur la façon dont certaines feuilles de style sont chargées. Le thème enfant charge toutes les feuilles de style à partir du parent, à l'exception de la feuille de style parent. C'est comme ça que le système a été construit. Maintenant, il y a des feuilles de style qui ne sont pas chargées par le thème, mais par Wordpress par défaut
editor-style.css
get chargé automatiquement dans l'éditeur TinyMCE. S'il vous plaît voir le codex pour une explication complète
rtl.css
n'est chargé que lorsque le site Web est défini sur une langue RTL. Sur les langues ltr comme l'anglais, la feuille de style n'est pas chargée. Ceci est également fait par défaut par Wordpress. Juste une note, pourquoi voudriez-vous charger votre feuille de style RTL sur un site LTR. C'est un gaspillage de ressources pour un
ie.css
La feuille de style, par exemple, n'est chargée que lorsque le navigateur actuel est IE8 ou une version antérieure. C'est tout le but de la feuille de style. IE8 et les versions antérieures ne prennent pas en charge les requêtes multimédia. Par conséquent, d'autres styles doivent être chargés sur ce navigateur.
Le code only dont vous avez besoin dans votre enfant functions.php est le suivant
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', array( 'genericons' ) );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/style.css',
array( 'parent-style' )
);
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );