WordPress Cookie Notice CSS entfernen
Alexander Trust, den 20. Januar 2016Wir wollen euch zeigen, wie ihr das WordPress Cookie Notice CSS entfernen könnt. Es handelt sich dabei um ein Plugin, das den von der EU verpflichtenden Hinweis unternimmt, auf die Datenschutzbestimmungen hinzuweisen.
Fast jedes Plugin in WordPress lädt eigene Stilvorlagen. Im Fall von Cookie Notice von dfactory wird für den Nutzer im Frontend eine CSS-Datei mit 3 KByte geladen. Sie ist nicht optimiert, insofern keine „minified“-Variante von ihr bereitsteht. Das ist ein Unding. Gerade weil in den letzten Jahren der Trend zur Optimierung von Webseiten geht.
Der Entwickler dfactory nutzt das Plugin auf seiner eigenen Webseite. Dort stellt man sich als Gruppe von WordPress-Entwicklern und Webdesignern mit jahrelanger Expertise vor. Dann das eigene Plugin nicht mit optimiertem CSS und Javascript anzubieten und es selbst in diesem Zustand zu verwenden, spricht für sich selbst.
Cookie Notice CSS entfernen
Die Ausgabe von Cookie Notice ist ein simples Konstrukt aus zwei div
-Containern entweder im Kopf oder am Boden der Webseite. Wer sich nicht selbst zutraut, dieses zu „stylen“, der kann einfach den Inhalt der CSS-Datei aus dem Plugin-Verzeichnis (/wp-content/plugins/cookie-notice/css/front.css
) in seine eigene, globale Stylesheet-Datei kopieren (meist style.css
).
add_action('wp_enqueue_scripts','cookie_notice_deregister_style',100);
function cookie_notice_deregister_style() {
wp_dequeue_style('cookie-notice-front');
}
Den obigen Code müsst ihr lediglich in die functions.php
eintragen und das CSS wird nicht mehr geladen. Der Action-Hook wp_enqueue_scripts
ist derjenige, den man verwenden sollte, wenn es um Angelegenheiten beim Einbinden von Stilvorlagen und Scripten fürs „Frontend“ geht (vgl. https://codex.wordpress.org/Plugin_API/Action_Reference/wp_enqueue_scripts).
Optimierungspotenzial
Davon abgesehen, dass der CSS-Code nicht „minified“ angeboten wird, nutzen die Entwickler viel zu viel Schnickschnack, der nicht benötigt wird. Im Backend erlaubt man beispielsweise die Einstellung von drei unterschiedlichen „Button“-Styles. Wenn Nutzer sich für eine davon entschieden haben, sollten sie das CSS für die anderen beiden einfach aus der Datei löschen. Hat man den Code in die eigene CSS-Datei integriert und das Laden der Standard-Datei wie oben beschrieben erledigt, ist man sogar vor Änderungen bei etwaigen Plugin-Updates gefeit.
Auch benutzt der Entwickler in der Stilvorlage Verläufe und plustert die Datei damit unnötig auf. 3 KByte sind natürlich nicht die Welt. Aber bei 10 Plugins dieser Art, die unbedarfte Nutzer installieren hat man schnell 30 KByte an zusätzlichem CSS geladen.
Zusätzliche Bemerkungen
Bei der Suche nach dem Namen der Stilvorlage ist mir aufgefallen, dass der Entwickler die CSS-Dateien nicht nach WordPress‘ Plugin-Entwickler-Handbuch einbindet. Normalerweise sollte man die Stilvorlage unter einem Namen mit wp_register_style()
registrieren und sie dann lediglich an benötigter Stelle mit der Kennzeichnung einbinden. Der Entwickler bindet sie „sofort“ ein, und registriert die Funktion nicht. Das ist grundsätzlich möglich, aber verwirrend für alle die, die dort draußen nach Standardbeispielen schauen, wie man Scripte oder Stilvorlagen deaktiviert. Denn in den allermeisten Fällen macht man das nicht mit einem wp_dequeue_style()
, wie wir es in diesem Fall mussten, sondern mit einem wp_deregister_style()
(vgl. https://codex.wordpress.org/Function_Reference/wp_dequeue_style).