Mein Variomedia

Hier können Sie sich im Kundenmenü einloggen.




Passwort vergessen?

Weitere Logins

Sie befinden sich hier: variomedia.de > Support > Häufige Fragen (FAQ) > Webanwendungen > WordPress

Fragen und Antworten

Wie kann ich die WordPress-Ladezeit reduzieren?

Die Ladezeit einer WordPress-Seite kann - je nach genutzter PHP-Version - etwa 0,5 bis 1 Sekunde betragen. Deutlich längere Ladezeiten lassen auf Probleme schließen, in den meisten Fällen liegt die Ursache bei einem WordPress-Plugin oder der Nutzung zu vieler Plugins.

Um die Ladezeit von WordPress zu reduzieren lassen sich diverse Optimierungen vornehmen, die zu mehr oder weniger großen Verbeserrungen bei der Ladezeit führen.

Empfohlene Optimierungen

Die größten Verbesserungen der Ladezeit lassen sich nach unseren Erfahrungen durch die folgenden Optimierungen erzielen:

Aktuelle PHP-Version wählen

Grundsätzlich empfiehlt es sich, für WordPress eine möglichst aktuelle PHP-Version zu nutzen, da neuere PHP-Version im Regelfall auch schneller sind. Die aktuelle PHP Version 8.2 ist beispielsweise um mehr als 60% schneller als die veraltete PHP-Version 5.6.

Cache-Plugin nutzen

Eine einfache Möglichkeit, WordPress spürbar zu beschleunigen, ist die Nutzung von Cache-Plugins wie W3 Total Cache (beachten Sie dazu auch unsere Konfigurationsempfehlungen). Diese Plugins erzeugen aus den dynamischen WordPress-Seiten statische HTML-Dateien, die deutlich schneller geladen werden können.

Bitte beachten Sie auch die Möglichkeit des serverseitigen Cachings in unseren Pro.Hosting-Paketen (siehe unten).

Nutzung von PHP-FPM mit OpCache (Pro.Hosting- bzw. Reseller.Dedicated-Paket)

In unseren Pro.Hosting-Paketen und auf dedizierten Servern können Sie PHP-FPM mit OpCache nutzen. Bei der Nutzung unserer Pro-Pakete lässt sich WordPress allein mit PHP-FPM um etwa Faktor 2 beschleunigen.

APCu Objektcache nutzen (Pro.Hosting- bzw. Reseller.Dedicated-Paket)

APCu ist eine sogenannte In-Memory Schlüssel-Werte-Datenbank (Key Value Store), die als Zusatzmodul in PHP eingebunden wird. Der APCu Objektcache wird von einigen WordPress-Plugins als Zwischenspeicher für die Ergebnisse von Datenbankanfragen genutzt, hierdurch kann die Zahl der Datenbankanfragen pro Seitenaufruf reduziert und somit die Ladezeit verkürzt werden. APCu ermöglicht Cache-Plugins wie W3 Total Cache oder WP-Rocket das Caching von dynamischen Elementen einer Webseite, die nicht einfach als statische Dateien auf dem Webserver angelegt werden können.

ACPu setzt die Nutzung von PHP-FPM voraus. Da der ACPu Cache zwischen allen Benutzern der gleichen PHP-FPM-Version geteilt wird (Shared Memory), kann APCu aus Datenschutz- und Sicherheitsgründen nur mit einem einzigen Benutzeraccount pro PHP-Version genutzt werden. Für Enkunden ist die Nutzung von ACPu daher ab einem Pro.B-Paket möglich, bei Resellern ab einem Dedicated.100-Paket.

PHP-Beschleuniger nutzen (Easy.Hosting-Paket)

Ab der PHP-Version 7.0 können sie auch auf unseren Easy.Hosting-Paketen den PHP-Beschleuniger OpCache nutzen, der die Ausführungszeit für PHP-Scripte um etwa 50% verkürzen kann. Die Einrichtung von OpCache im Datei-Modus ist in einem eigenen FAQ-Artikel beschrieben.

Weitere Optimierungsmöglichkeiten

Zusätzlich zu diesen Optimierungen gibt es noch weitere Möglichkeiten, die jedoch nach unseren Erfahrungen meistens nur zu geringfügigen Verbesserungen führen:

Kompression mit mod_deflate bzw. mod_brotli

Die Apache-Module mod_deflate und mod_brotli können Webseiten vor der Übertragung komprimieren, dies kann sich auch bei WordPress positiv auf die Ladezeit auswirken. Die Kompression sollte nur für Textdateien wie HTML, Javascript und CSS genutzt werden, bereits komprimierte Dateien wie z.B. JPG-Bilder oder MP4-Filme lassen sich nicht weiter komprimieren. Legen Sie dazu bitte eine .htaccess-Datei mit folgendem Inhalt an oder ergänzen Sie die Zeile in einer bestehenden .htaccess-Datei:

AddOutputFilterByType BROTLI_COMPRESS;DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript image/svg+xml image/x-icon

Bitte testen Sie anschließend, ob die Änderung den gewünschten Effekt gebracht hat. Falls nicht, kann es sein, dass die Komprimierung der Daten mehr Zeit beansprucht, als durch die schnellere Übertragung der Daten eingespart wird. In diesem Fall sollten Sie auf die Nutzung der Kompression verzichten.

Eine Alternative zur manuellen Anpassung der .htaccess-Datei ist ein WordPress-Plugin wie Enable Gzip Compression. Wenn Sie im WordPress-Plugin-Verzeichnis nach "gzip" suchen, finden Sie auch zahlreiche weitere Plugins, die diese und andere Optimierungsfunktionen bieten.

Hinweis: Beachten Sie bitte, dass viele Cache-Plugins ebenfalls die Kompression aktivieren, in diesem Fall müssen Sie normalerweise keine Änderungen an der .htaccess-Datei vornehmen vornehmen.

InnoDB-Tabellen nutzen

Bei älteren WordPress-Installationen kann es vorkommen, dass Datenbanktabellen im mittlerweile veralteten MyISAM-Format angelegt wurden. Falls Ihre WordPress-Installation älter als etwa 10 Jahre ist, sollten Sie prüfen, ob alle Datenbanktabellen von WordPress im InnoDB-Format vorliegen.

Für die Umstellung auf InnoDB sollte für die Datenbank MySQL ab Version 5.6 bzw. MariaDB genutzt werden, da InnoDB in älteren MySQL-Versionen noch keine Volltextsuche unterstützt. Falls Ihre WordPress-Datenbank noch MySQL Version 5.5 nutzt, können Sie im Kundenmenü eine neue Datenbank mit einer aktuellen MySQL- bzw. MariaDB-Version anlegen, in diese dann einen Dump der alten WordPress-Datenbank einspielen, und dann die neue Datenbank in der WordPress-Konfigurationsdatei wp-config.php eintragen.

Das Tabellenformat ihrer WordPress-Installation können Sie entweder in unserer phpMyAdmin-Datenbankverwaltung einsehen und umstellen, oder Sie nutzen ein WordPress-Plugin wie LiteSpeed Cache, dass in den Optionen die Umstellung des Tabellenformats vornehmen kann.

Alternativ können Sie auch wp-cli auf dem Webserver nutzen. Melden Sie sich dazu per SSH auf dem Webserver an, und wechseln dann in das WordPress-Installationsverzeichnis. Dort führen Sie dann folgenden Befehl aus, um alle MyISAM-Tabellen anzuzeigen:

wp db query "SHOW TABLE STATUS WHERE Engine = 'MyISAM'"
Falls keine Tabellen angegeigt werden, liegen bereits alle WordPress-Tabellen im InnoDB-Format vor. Falls Tabellen angegeigt werden, können Sie diese mit folgendem Befehl ins InnoDB-Format konvertieren (dies kann je nach Größe der Tabellen einige Zeit in Anspruch nehmen):

for WPTABLE in `wp db query "SHOW TABLE STATUS WHERE Engine = 'MyISAM'" --silent --skip-column-names | awk '{ print $1}'`; do wp db query "ALTER TABLE $WPTABLE ENGINE=InnoDB"; done

WP-Cron deaktivieren

WordPress vearbeitet regelmäßig anstehende Aufgaben wie die Prüfung auf Updates über die sogenannte WP-Cron-Funktion. Diese Funktion prüft bei jedem Seitenaufruf, ob es anstehende Aufgaben gibt und führt diese ggf. aus.

Bei Webseiten mit sehr hohen Zugriffszahlen kann es sich lohnen, die automatische WP-Cron-Funktion zu deaktivieren und durch einen Cronjob auf dem Webserver zu ersetzen. Hierzu müssen Sie zunächst die WordPress-Konfigurationsdatei wp-config.php bearbeiten, fügen Sie hier vor der Zeile /* That's all, stop editing! Happy blogging. */ folgende Zeile hinzu:

define('DISABLE_WP_CRON', true);

Abschließend müssen Sie noch einen Cronjob auf dem Webserver einrichten, der alle 15 Minuten die WP-Cron-Funktion aufruft:

*/15 * * * * curl -s https://meine-domain.de/wp-cron.php?doing_wp_cron > /dev/null

Ersetzen Sie dabei meine-domain.de durch den Domainnamen Ihrer WordPress-Installation, bei Domains ohne SSL-Zertifikat muss die URL http://meine-domain.de statt https://meine-domain.de genutzt werden.

WordPress Datenbank optimieren

Bei älteren WordPress-Installationen kann es im Laufe der Zeit zu einer Fragmentierung der Datenbank kommen, die zu einer Verlangsamung von WordPress führen kann. In diesem Fall kann es sich lohnen, die Datenbank zu optimieren.

Melden Sie sich dazu per SSH auf dem Webserver an, und wechseln dann in das WordPress-Installationsverzeichnis. Dort führen Sie dann folgenden Befehl aus:

wp db optimize

Beachten Sie bitte, dass diese Optimierung bei großen Datenbanken einige Minuten dauern kann, und die Datenbank dabei für andere Zugriffe gesperrt wird, Ihre WordPress-Webseite kann in dieser Zeit nicht aufgerufen werden.

Webserver-Caching (nur Pro.Hosting-Pakete)

Wir bieten auf Wunsch in unseren Pro.Hosting-Paketen eine spezielle Webserver-Konfiguration mit serverseitigem Caching an. Dieser Webserver eignet sich besonders für WordPress-Installationen mit langen Seitenladezeiten, die beispielsweise bei der Nutzung von WooCommerce oder Elementor häufiger auftreten können.

Durch den serverseitigen Cache lassen sich die Seitenladezeiten deutlich reduzieren: die TTFB (Time to First Byte) liegt hier in der Regel um 100 Millisekunden und die Gesamtladezeit der Startseite bleibt bei einer typischen WordPress-Installation unter 0,5 Sekunden. Mehr Informationen dazu finden Sie im FAQ-Artikel "Was muss bei der Nutzung des speziellen WordPress-Webservers beachtet werden?".

Probleme mit WordPress-Plugins

Ladezeiten von deulich über einer Sekunde sind ungewöhnlich und werden meistens durch Plugins verursacht. Entweder es werden zu viele Plugins genutzt, oder es gibt ein Problem mit einem Plugin. Generell empfiehlt es sich, möglichst wenige Plugins zu nutzen, da jedes zusätzliche Plugin WordPress etwas langsamer macht, und Plugins häufig problematische Sicherheitslücken enthalten.

Sie können die Ladezeit der von Ihnen genutzten WordPress-Plugins über das Code Profiler Plugin (erfordert PHP Version 7.1 oder neuer) ermitteln, und so Plugins mit besonders langen Ladezeiten identifizieren und ggf. deaktivieren.

Hinweis: Beachten Sie bitte, dass der Code Profiler die Ausführungsgeschwindigkeit von WordPress deutlich verlangsamt. Die vom Code Profiiler angezeigten Ausführungsgeschwindigkeiten müssen daher immer realativ zueinander betrachtet werden, sie entsprechen nicht der tatsächlichen Ausführungsgeschwindigkeit im normalen Betrieb ohne den Code Profiler.

Links


APCu
Cache
gzip
mod_deflate
OpCache
WordPress