web-dev-qa-db-fra.com

Supprimer TOUS les CSS pour une page de plugin spécifique

Je suis en train d'écrire un plugin qui se raccorde avec un [TAG] sur une page. A partir de maintenant, tout fonctionne bien sauf le css personnalisé. J'ai écrit mon plugin sur une station de développement avec un thème de base (20-14 je pense). Quand j'ai mis mon plugin dans le site réel, c'était très moche, car le thème du site css n'était pas géré. Il existe un moyen de réinitialiser ou de supprimer tous les css d'un plugin. Je demande ceci parce que si un jour je veux changer de thème, je devrai réécrire mon plugin pour gérer plus de thèmes CSS. A partir de maintenant, j'ai essayé à la dure avec wp_deregister_style ('slug').

add_action( 'wp_enqueue_scripts', 'my_scripts_method');


 function my_scripts_method() {    
//    wp_deregister_style('open-sans-css');
//    wp_deregister_style('rs-settings-css');
//    wp_deregister_style('rs-captions-css');
//    wp_deregister_style('rs-plugin-static-css');
//    wp_deregister_style('wp125style-css');
//    wp_deregister_style('u-design-reset-css');
//    wp_deregister_style('u-design-text-css');
//    wp_deregister_style('u-design-grid-960-css');
//    wp_deregister_style('u-design-superfish_menu-css');
//    wp_deregister_style('u-design-pretty_photo-css');
//    wp_deregister_style('u-design-style-css');
//    wp_deregister_style('u-design-custom-style-css');
//    wp_deregister_style('u-design-responsive-css');
//    wp_deregister_style('u-design-style-orig-css');
//and continue....

Mais ça ne marche pas. Même si cela fonctionne, je devrai recommencer complètement si je change de thème. Il y a un moyen de mettre un css de réinitialisation comme ou tout mettre à 0?

Désolé pour mon mauvais anglais, je suis français.

François

1
f.soucy

Vous pouvez essayer cette fonction.

function remove_all_theme_styles() {
    global $wp_styles;
    $wp_styles->queue = array();
}
add_action('wp_print_styles', 'remove_all_theme_styles', 100);

Cela devrait fonctionner sur n’importe quel thème, mais ce n’est pas vraiment une bonne approche pour désactiver les CSS de thème juste pour que votre plugin soit beau.

1
Domeniko

Vous devriez utiliser probablement

wp_dequeue_style();
0
Sormano