Avatar von Matthias Bathke

von

Lesezeit: 6 Minuten

Performance-Boost: ACF-Scripts & CSS ausblenden

Advanced Custom Fields (ACF) ist ein bedeutendes Werkzeug für WordPress-Entwickler. Es ermöglicht die Erstellung maßgeschneiderter Eingabemasken und die Integration dieser Felder direkt im Frontend. Doch trotz seiner Fähigkeiten bringt es einen kleinen Makel mit: Die Verschlechterung des PageSpeeds durch meist unnötige Scripts im Frontend.

Das Problem im Detail

Beim Einsatz von ACF zur Hinzufügung von Formularfeldern im Frontend, etwa für Nutzerkommentare, geschieht Folgendes:

  • Alle Formular-Scripts werden geladen, ohne bedarfsgesteuertes (on-demand) Loading.
  • Es entstehen Abhängigkeiten von Frameworks wie jQuery und jQueryUI, was zu weiteren nachgeladenen Scripts führt.
  • Es kann zu Inkompatibilitäten und unerwartetem Verhalten kommen, da einige Scripts für das WP-Admin optimiert sind und dadurch Konflikte mit anderen Themes oder Plugins verursachen können.
  • Das Hauptproblem: Die deutliche Beeinträchtigung des PageSpeeds, welcher ein kritischer Faktor für die Suchmaschinenoptimierung ist.

Häufiger Fehler mit großer Auswirkung

Advanced Custom Fields ist bei weitem nicht das einzige Plugin, das mit solchen Schwierigkeiten konfrontiert ist. WooCommerce beispielsweise präsentiert ähnliche Patzer und vergrößert signifikant die Seitenladezeit, insbesondere bei Warenkorb und Checkout. Für Website-Betreiber ist es daher essentiell, stets die Folgen eines Plugins und seiner jeweiligen Funktionen zu evaluieren.

Die effektive Lösung

Zahlreiche WP-Admin-Scripts werden unnötigerweise im Frontend ausgegeben.

Advanced Custom Fields bietet hierfür bislang werde eine offizielle Lösung noch einen Filter geschweige denn eine Einstellung.

Um das automatische Laden der ACF-Scripts im Frontend zu unterdrücken, können Sie folgenden Code in der functions.php Ihres Themes einfügen oder als eigenständiges Plugin verwenden:

<?php
if(!is_admin()){
    add_action('acf/init', function(){
        acf_update_setting('has_done_ACF_Assets::add_actions', true);
    });
}Code-Sprache: HTML, XML (xml)

Die hier beschriebene Lösung gaukelt Advanced Custom Fields vor, dass im Frontend das Scripts Loading bereits ausgeführt wurde – kein offizieller Weg, aber als Hotfix reicht es aus.

Fazit

ACF hat enormes Potential und kann, wenn es richtig eingesetzt wird, den Wert eines Webprojekts signifikant steigern. Es ist bedauerlich, dass solch erfolgreiche Plugin-Anbieter den PageSpeed nicht ausreichend berücksichtigen. Ein bewussterer Umgang mit dieser Thematik seitens ACF wäre für alle Anwender eine willkommene Verbesserung.