Après la mise à niveau vers WC 2.1.2, mon style semble avoir été annulé par le style standard de WC. Existe-t-il un moyen de remplacer le style de WC standard sans recourir à des solutions telles que l'utilisation de !important
ou d'autres méthodes hackish?
Peut-être qu'en le mettant en file d'attente d'une certaine manière dans functions.php
?
Beaucoup de gens recommandent de désactiver les styles de WC et de copier tous les styles dans vos propres styles de thème. Mais n'est-ce pas mauvais si Woocommerce ajoute des fonctionnalités?
wp_enqueue_style
prend en charge les dépendances. Ainsi, si vous faites du style WooCommerce une dépendance pour votre nouvelle feuille de style, celle-ci sera toujours chargée après la feuille de style WooCommerce.
Quelque chose comme cela devrait fonctionner, mais il n'a pas été testé:
function enqueue_style_after_wc(){
$deps = class_exists( 'WooCommerce' ) ? array( 'woocommerce-layout', 'woocommerce-smallscreen', 'woocommerce-general' ) : array();
wp_enqueue_style( 'my-style', 'my-style.css', $deps, '1.0' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_style_after_wc' );
EDIT: Il s'avère que vous n'avez pas besoin d'utiliser de dépendances. Vous avez juste besoin de mettre en file d'attente vos styles après que WooCommerce a mis la leur en file d'attente .... en utilisant une priorité ultérieure.
function enqueue_style_after_wc(){
wp_enqueue_style( 'my-style', 'my-style.css', array(), '2.0' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_style_after_wc', 20 );