wordpress

WordPress-Theme-Performance optimieren

Warum die Theme-Performance entscheidend ist

Die Ladezeit einer WordPress-Website wird massgeblich durch das verwendete Theme bestimmt. Waehrend viele Betreiber sich auf Plugins und Server-Konfiguration konzentrieren, uebersehen sie, dass das Theme selbst oft der groesste Flaschenhals ist. Ein schlecht programmiertes oder ueberladenes Theme kann selbst auf einem leistungsstarken Server fuer frustrierend lange Ladezeiten sorgen.

Google bewertet die Seitengeschwindigkeit als direkten Rankingfaktor. Mit den Core Web Vitals – Largest Contentful Paint (LCP), First Input Delay (FID) und Cumulative Layout Shift (CLS) – hat Google klare Metriken definiert, an denen sich die Performance messen laesst. Ein langsames Theme kann Ihre Rankings direkt negativ beeinflussen.

Doch es geht nicht nur um SEO. Studien zeigen, dass 53 Prozent der mobilen Nutzer eine Seite verlassen, wenn sie laenger als drei Sekunden zum Laden braucht. Jede Zehntelsekunde zaehlt – fuer Ihre Besucher und Ihr Geschaeft.

In diesem Artikel zeige ich Ihnen systematisch, wie Sie Ihr WordPress-Theme fuer maximale Performance optimieren koennen.

Das Theme richtig auswaehlen

Schlanke Themes bevorzugen

Die Wahl des richtigen Themes ist die erste und wichtigste Entscheidung. Viele populaere Multipurpose-Themes wie Avada, Divi oder Enfold sind mit Funktionen ueberladen, die die meisten Websites nie benoetigen. Jede ungenutzte Funktion bedeutet zusaetzlichen Code, der geladen und ausgefuehrt werden muss.

Empfehlenswerte schlanke Themes fuer performante WordPress-Websites:

  • GeneratePress – eines der schnellsten WordPress-Themes ueberhaupt. Unter 30 KB gross, modular erweiterbar.
  • Astra – leichtgewichtig mit etwa 50 KB, bietet dennoch umfangreiche Anpassungsmoeglichkeiten.
  • Kadence – modern, performant und mit einem exzellenten Block-Theme-Editor.
  • Flavor – minimalistisch und auf das Wesentliche reduziert.

Auf Page-Builder verzichten oder gezielt einsetzen

Page-Builder wie Elementor, WPBakery oder Beaver Builder machen das Design einfach, fuegen aber erheblichen Overhead hinzu. Elementor laedt beispielsweise eigene CSS- und JavaScript-Dateien auf jeder Seite – auch dort, wo der Builder gar nicht verwendet wird.

Wenn Sie einen Page-Builder benoetigen, sollten Sie:

  • Den Builder nur auf den Seiten aktivieren, die ihn tatsaechlich nutzen
  • Ungenutzten Builder-Code per Plugin oder manuell entfernen
  • Alternativ den nativen WordPress-Block-Editor (Gutenberg) mit einem Block-Theme verwenden

CSS optimieren

Ungenutztes CSS entfernen

Die meisten WordPress-Themes laden deutlich mehr CSS, als auf der jeweiligen Seite benoetigt wird. Manche Themes laden das gesamte Stylesheet auf jeder Seite, obwohl einzelne Seiten nur einen Bruchteil der Styles benoetigen.

So identifizieren und entfernen Sie ungenutztes CSS:

  1. Chrome DevTools Coverage-Tab oeffnen (Strg+Shift+P, dann “Coverage” eingeben). Dieser zeigt Ihnen, welcher Anteil des geladenen CSS tatsaechlich verwendet wird.
  2. PurgeCSS oder UnCSS verwenden, um ungenutztes CSS automatisch zu entfernen.
  3. WordPress-Plugins wie “Asset CleanUp” oder “Perfmatters” koennen CSS-Dateien seitenweise deaktivieren.

Kritisches CSS inline laden

Kritisches CSS (Critical CSS) umfasst die Styles, die fuer den sichtbaren Bereich der Seite (Above the Fold) benoetigt werden. Indem Sie diese Styles direkt im HTML-Head inline platzieren, kann der Browser den sichtbaren Bereich sofort rendern, ohne auf eine externe CSS-Datei warten zu muessen.

  • WP Rocket generiert kritisches CSS automatisch
  • Critical CSS Generator (web.dev) hilft bei der manuellen Erstellung
  • Autoptimize bietet eine Option fuer kritisches CSS in der kostenlosen Version

CSS-Dateien zusammenfassen und minimieren

Viele Themes und Plugins laden jeweils eigene CSS-Dateien. Jede einzelne Datei bedeutet eine zusaetzliche HTTP-Anfrage, die die Ladezeit erhoeht.

  • Zusammenfassen (Concatenation): Mehrere CSS-Dateien in eine einzige Datei zusammenfuehren
  • Minimieren (Minification): Leerzeichen, Kommentare und unnoetige Zeichen entfernen
  • Tools: Autoptimize, WP Rocket oder W3 Total Cache uebernehmen dies automatisch

Hinweis: Bei HTTP/2 ist das Zusammenfassen weniger wichtig als frueher, da HTTP/2 mehrere Dateien parallel uebertragen kann. Die Minimierung bleibt aber in jedem Fall sinnvoll.

JavaScript optimieren

JavaScript-Dateien aufraeumen

WordPress-Themes laden haeufig JavaScript-Bibliotheken, die nicht auf jeder Seite benoetigt werden. jQuery ist ein klassisches Beispiel: Viele moderne Themes benoetigen jQuery gar nicht mehr, laden es aber trotzdem.

  • Identifizieren Sie unnoetige Scripts ueber die Chrome DevTools (Netzwerk-Tab, Filter auf JS)
  • Deaktivieren Sie Scripts seitenweise mit Plugins wie “Asset CleanUp” oder “Perfmatters”
  • Ersetzen Sie jQuery-Abhaengigkeiten durch Vanilla JavaScript, wo moeglich

Scripts verzogert laden (Defer und Async)

Standardmaessig blockiert JavaScript das Rendering der Seite. Der Browser stoppt das Parsen des HTML, laedt das Script und fuehrt es aus, bevor er weitermacht. Durch die Attribute defer und async laesst sich dieses Verhalten aendern:

  • defer: Das Script wird heruntergeladen, waehrend das HTML weiter geparst wird, und erst nach dem vollstaendigen Parsen ausgefuehrt. Ideal fuer die meisten Scripts.
  • async: Das Script wird heruntergeladen und sofort ausgefuehrt, sobald es verfuegbar ist. Geeignet fuer unabhaengige Scripts wie Analytics.

In der functions.php Ihres Child-Themes koennen Sie Scripts mit defer laden:

function add_defer_attribute($tag, $handle) {
    $scripts_to_defer = array('jquery-migrate', 'comment-reply');
    foreach ($scripts_to_defer as $defer_script) {
        if ($defer_script === $handle) {
            return str_replace(' src', ' defer src', $tag);
        }
    }
    return $tag;
}
add_filter('script_loader_tag', 'add_defer_attribute', 10, 2);

Datenbankabfragen reduzieren

Das Problem verstehen

Jede WordPress-Seite fuehrt zahlreiche Datenbankabfragen aus – fuer den Seiteninhalt, Widgets, Menues, Theme-Optionen, Sidebars und vieles mehr. Ein unkritisch programmiertes Theme kann leicht 100 oder mehr Datenbankabfragen pro Seitenaufruf ausloesen.

Theme-Optionen effizient laden

Viele Premium-Themes speichern Hunderte von Einstellungen als individuelle Eintraege in der wp_options-Tabelle. Jede Einstellung bedeutet eine separate Datenbankabfrage.

Besser ist es, wenn das Theme alle Optionen als ein einziges serialisiertes Array speichert und mit einem einzigen get_option()-Aufruf laedt. Pruefen Sie, ob Ihr Theme dies bereits tut, und kontaktieren Sie gegebenenfalls den Theme-Entwickler.

Transient-API nutzen

Die WordPress Transient API ermoeglicht es, aufwendige Datenbankabfragen zwischenzuspeichern:

$results = get_transient('custom_query_results');
if (false === $results) {
    $results = new WP_Query(array(
        'post_type' => 'post',
        'posts_per_page' => 10,
        'meta_key' => 'popular_count',
        'orderby' => 'meta_value_num',
        'order' => 'DESC'
    ));
    set_transient('custom_query_results', $results, HOUR_IN_SECONDS);
}

Dadurch wird die aufwendige Abfrage nur einmal pro Stunde ausgefuehrt statt bei jedem Seitenaufruf.

WP_Query optimieren

Wenn Ihr Theme eigene Datenbankabfragen verwendet, stellen Sie sicher, dass diese effizient formuliert sind:

  • Begrenzen Sie die Anzahl der Ergebnisse mit posts_per_page
  • Deaktivieren Sie die Zaehlung mit 'no_found_rows' => true, wenn Sie keine Paginierung benoetigen
  • Vermeiden Sie Meta-Queries, die nicht durch Indizes abgedeckt sind
  • Cachen Sie Abfragen mit der Transient-API oder einem Object-Cache wie Redis

Bilder im Theme optimieren

Theme-eigene Bilder optimieren

Viele Themes enthalten Bilder fuer Muster, Hintergruende oder Platzhalter, die nicht immer optimal komprimiert sind. Pruefen und komprimieren Sie alle Bilder im Theme-Verzeichnis:

  • Verwenden Sie WebP oder AVIF als Bildformat fuer bessere Kompression bei gleicher Qualitaet
  • Komprimieren Sie Bilder mit Tools wie Squoosh, TinyPNG oder ShortPixel
  • Entfernen Sie nicht benoetigte Theme-Bilder

Lazy Loading implementieren

Bilder, die nicht im sichtbaren Bereich sind, sollten erst geladen werden, wenn der Benutzer zu ihnen scrollt. WordPress unterstuetzt seit Version 5.5 natives Lazy Loading ueber das loading="lazy"-Attribut. Stellen Sie sicher, dass Ihr Theme dieses Attribut nicht ueberschreibt oder entfernt.

Wichtig: Das Hauptbild im sichtbaren Bereich (Hero-Image, Featured Image) sollte nicht lazy-loaded werden, da dies den Largest Contentful Paint (LCP) verschlechtern wuerde.

Responsive Images korrekt einsetzen

WordPress generiert automatisch verschiedene Bildgroessen. Ihr Theme sollte das srcset-Attribut verwenden, damit der Browser die passende Bildgroesse fuer das jeweilige Geraet laedt:

<img src="bild-800.jpg"
     srcset="bild-400.jpg 400w, bild-800.jpg 800w, bild-1200.jpg 1200w"
     sizes="(max-width: 600px) 400px, (max-width: 1000px) 800px, 1200px"
     alt="Beschreibung">

Webfonts performant einbinden

Das Problem mit Google Fonts

Google Fonts sind beliebt, aber ihre standardmaessige Einbindung ueber die Google-Server kann die Ladezeit deutlich verlaengern. Jede Font-Anfrage bedeutet DNS-Lookup, TCP-Verbindung und TLS-Handshake zu einem externen Server.

Fonts lokal hosten

Hosten Sie Webfonts lokal auf Ihrem eigenen Server. Das eliminiert externe Anfragen und gibt Ihnen volle Kontrolle ueber das Caching:

  1. Laden Sie die benoetigten Font-Dateien von Google Fonts herunter (oder nutzen Sie den Google Webfonts Helper)
  2. Platzieren Sie die Dateien im Theme-Verzeichnis
  3. Binden Sie die Fonts per @font-face in Ihrem CSS ein
  4. Entfernen Sie die Google-Fonts-Einbindung aus der functions.php

Font-Loading optimieren

  • Verwenden Sie font-display: swap, damit der Browser Text sofort mit einer Fallback-Schrift anzeigt und die Webfont nachlaedt
  • Laden Sie nur die benoetigten Zeichensaetze – fuer deutsche Websites reicht meist “latin” und “latin-extended”
  • Begrenzen Sie die Anzahl der Schriftarten und Schriftschnitte. Zwei Schriftfamilien mit jeweils zwei bis drei Schnitten sind in der Regel ausreichend
  • Preloaden Sie die wichtigste Schriftart mit einem <link rel="preload">-Tag

Performance messen und ueberwachen

Wichtige Tools

  • Google PageSpeed Insights – analysiert Ihre Seite und gibt konkrete Optimierungsvorschlaege
  • GTmetrix – detaillierte Performance-Analyse mit Wasserfall-Diagramm
  • WebPageTest – fortgeschrittene Analyse mit verschiedenen Standorten und Verbindungstypen
  • Chrome DevTools Lighthouse – lokal im Browser, ohne Netzwerkverzoegerung

Kennzahlen im Blick behalten

Ueberwachen Sie diese Metriken regelmaessig:

  • Largest Contentful Paint (LCP): Sollte unter 2,5 Sekunden liegen
  • First Input Delay (FID): Sollte unter 100 Millisekunden liegen
  • Cumulative Layout Shift (CLS): Sollte unter 0,1 liegen
  • Time to First Byte (TTFB): Sollte unter 800 Millisekunden liegen
  • Total Blocking Time (TBT): Sollte unter 200 Millisekunden liegen

Vorher-Nachher-Vergleich

Bevor Sie Aenderungen am Theme vornehmen, dokumentieren Sie die aktuellen Performance-Werte. Messen Sie nach jeder Optimierung erneut, um den Effekt zu quantifizieren. So erkennen Sie, welche Massnahmen den groessten Einfluss haben, und koennen Ihre Optimierungen priorisieren.

Checkliste: Theme-Performance-Optimierung

  • [ ] Schlankes, gut programmiertes Theme ausgewaehlt
  • [ ] Ungenutztes CSS identifiziert und entfernt
  • [ ] Kritisches CSS inline eingebunden
  • [ ] CSS-Dateien minimiert
  • [ ] JavaScript-Dateien aufgeraeumt und nur bei Bedarf geladen
  • [ ] Scripts mit defer oder async geladen
  • [ ] Datenbankabfragen auf ein Minimum reduziert
  • [ ] Transient-API fuer aufwendige Abfragen genutzt
  • [ ] Theme-Bilder komprimiert und in modernen Formaten bereitgestellt
  • [ ] Lazy Loading korrekt implementiert
  • [ ] Webfonts lokal gehostet und optimiert geladen
  • [ ] Core Web Vitals gemessen und im gruenen Bereich

Fazit

Die Performance-Optimierung eines WordPress-Themes ist keine einmalige Aufgabe, sondern ein fortlaufender Prozess. Beginnen Sie mit den Massnahmen, die den groessten Effekt haben – die Wahl eines schlanken Themes, das Entfernen von ungenutztem CSS und JavaScript und die Optimierung von Bildern und Schriftarten.

Messen Sie vor und nach jeder Aenderung, um den Erfolg zu quantifizieren. Oft sind es die kleinen Optimierungen, die in der Summe den groessten Unterschied machen.

Bei blogsandpages.com helfen wir Ihnen gerne dabei, Ihr WordPress-Theme auf maximale Performance zu trimmen. Ob Theme-Auswahl, individuelle Optimierung oder komplette Performance-Audits – wir sorgen dafuer, dass Ihre Website schnell und zuverlaessig laedt.

Katharina Schneider

Katharina Schneider

Gründerin von blogsandpages.com – Expertin für Blogs, Unternehmenswebseiten und individuelle Publishing-Lösungen.

Bereit für Ihr nächstes Projekt?

Ob Blog, Unternehmenswebseite oder individuelle Plattform – lassen Sie uns gemeinsam bauen. Professionell, SEO-optimiert und auf Ihre Bedürfnisse zugeschnitten.

Projekt starten