it-swarm.com.de

Wie kann ich das CSS eines Plugins mit einem untergeordneten Thema überschreiben?

Ich habe es mir zur Aufgabe gemacht, die WordPress-Konventionen einzuhalten, damit ich ein sauberes, sexy Kinderthema haben kann. Ich bin mir jedoch nicht sicher, wie ich bei einem bestimmten Problem vorgehen soll.

Ich möchte das CSS für einige Plugins in meiner WordPress-Website überschreiben, und dieser wunderbare Beitrag war ein großer Schritt in die richtige Richtung. Meine einzige Sorge ist, dass ich alles tun möchte, um das Überschreiben von der header.php-Datei in meinem übergeordneten Design zu vermeiden, um dies zu tun.

Gibt es eine andere wunderbare Möglichkeit, dies zu tun? Danke für Ihre Hilfe!

Update :

Wie bereits in einem Kommentar eines anderen Benutzers erwähnt, hängt dies davon ab, wie das Plugin seine Stile implementiert. Angenommen, die Plugins bieten eine Möglichkeit, Stile in das Blatt style.css des untergeordneten Themas oder in meinem Fall in einen separaten Ordner styles zu implementieren, der mit diesem Blatt style.css verknüpft ist.

Ich weiß auch, dass ich !important überall verwenden kann, aber das wird im Allgemeinen verpönt.

7

Wenn die Plugins ihre Stile über wp_enqueue_style korrekt hinzufügen, müssen Sie sie einfach aus der Warteschlange entfernen:

function wpa_dequeue_style() {
    wp_dequeue_style( 'plugin-style-handle' );
}
add_action( 'wp_enqueue_scripts', 'wpa_dequeue_style', 100 );

Ob dies funktioniert oder nicht, hängt davon ab, wie und wo die Plugins ihre Stile hinzufügen. Es gibt also keine absolute Antwort, ohne die von den betreffenden Plugins verwendeten Methoden zu kennen.

BEARBEITEN - Eine weitere Option, bei der die Stile nicht vollständig entfernt werden müssen, besteht darin, Ihre eigenen Stile mit den Plug-in-Stilen als Abhängigkeit in eine Warteschlange einzureihen:

wp_enqueue_style(
    'my-styles',
    get_template_directory_uri() . '/mystyles.css',
    array('plugin-style-handle')
);
14
Milo