web-dev-qa-db-fra.com

Est-il possible de mettre en file d'attente les fichiers CSS du plugin avant les fichiers CSS du thème?

Si je mets en file d'attente les styles de mon plugin, il se charge après les styles du thème. C'est pourquoi une partie des CSS de mon plugin est prioritaire sur celle du thème. Ce problème serait résolu si je pouvais m'assurer que les styles de mon plugin se chargent après les styles de thème.

1
Eh Jewel

Il est facile d'ajouter votre feuille de style de plugin après celle de thème. Si vous êtes sûr que vos styles de thèmes et plugins ont le même poids de sélecteur ( theme a ce style .site-header { background-color: #ccc; } et votre plugin a ce .site-header { background-color: #f1f1f1; }), puis mettre en cache la feuille de style du plugin après que la feuille de style du thème fonctionne.

Si vous mettez en attente avec le hook d'action wp_enqueue_scripts, alors le changement du paramètre de priorité au hook fera le travail. Voici un exemple:

function op_enqueue_scripts() {
    wp_enqueue_style( 'bootstrap', 'https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css' );
}
add_action( 'wp_enqueue_scripts', 'op_enqueue_scripts', 50 );

Si la priorité 50 ne fonctionne pas, essayez de l'augmenter à 80 ou 100.

1
obiPlabon

Non (ou techniquement, mais dans quelques jours, on se demandera comment mettre en file d'attente les styles de thème avant ceux de plug-in).

Si vos styles sont remplacés par des styles de thème, cela signifie que vous ne préfixez pas correctement vos classes.

0
Mark Kaplun