Die Ladezeit einer Webseite wird immer wichtiger. Inzwischen ist die Geschwindigkeit auch ein Ranking-Faktor bei den Suchergebnissen von Google und das zu recht. Denn eine langsame Webseite führt zu unzufriedenen Besuchern. Vor allem wenn diese mit dem Handy auf die Seite zugreifen möchten. Doch schon mit einigen kleinen Veränderungen kann man WordPress schneller machen. So wird nicht nur die Benutzerfreundlichkeit der Seite, sondern auch ein wichtiger SEO-Faktor optimiert.
- WordPress Performance messen
- WordPress schneller machen
- 1. Bilder komprimieren
- 2. Bilder nachladen
- 3. Plugins überprüfen
- 4. Datenbank bereinigen
- 5. Schriften reduzieren
- 6. Selektives Laden von (Plugin-) Scripten
- 6. Code komprimieren
- 7. Caching & Speed-Plugin einsetzen
- 8. Bei statischen URLs keine Query Strings verwenden
- 9. Hosting
- 10. Content Delivery Netzwerk (CDN) nutzen
- Fazit
WordPress Performance messen
Bevor Du WordPress schneller machen kannst, solltest Du zunächst die Webseite analysieren. Also feststellen, wie schnell die Webseite ist und wo die Tempobremsen zu finden sind.
Hierzu bieten sich folgende Online-Tools an:
Neben der Ladezeit geben diese Performance-Tools auch einen Überblick über die Anzahl der Requests und die Webseiten-Größe.
In einer Waterfall-Ansicht siehst Du alle Dateien, die zum Aufbau der Webseite benötigt werden. So hast Du einen guten Überblick und kannst den Optimierungsbedarf feststellen.
Im meinem Beitrag WordPress Performance testen findest Du eine Übersicht weiterer nützlicher Tools zur Performance Analyse.
WordPress schneller machen
1. Bilder komprimieren
Leider laden immer noch sehr viele WordPress-Nutzer zu große Bilder hoch. Durch die Verringerung der Bildgröße kann man häufig die Ladezeit der Seite enorm beschleunigen.
Zur Bildoptimierung kannst Du einfach ein Bildbearbeitungsprogramm wie Photoshop nutzen. Und die Bilder als Progressiv-JPG abspeichern.
Auch Online-Tools wie compressor.io oder TinyPNG sind sehr nützlich.
Wenn du direkt in WordPress dein Bilder optimieren möchtest, empfehle ich dir das Plugin Imagify. Damit kannst du deine Bilder komprimieren und auch ins WebP-Format umwandeln.
2. Bilder nachladen
Durch Lazy Load werden die Bilder einer Webseite erst dann geladen, wenn der Benutzer in den Bild-Bereich scrollt. Gerade bei Foto-Blogs kann man dadurch den Seitenaufbau sehr gut beschleunigen.
Lazy Load wird inzwischen direkt von WP unterstützt, aber in manchen Fällen ist ein spezielles Lazy Load Tool besser geeignet. Eine kleine Auswahl findest du in meinem Beitrag Lazy Load Plugins für WordPress.
Auch viele Caching-Plugins wie z.B. WP-Rocket oder SwiftPerformance enthalten ebenfalls eine Lazy Load Funktion.
3. Plugins überprüfen
Für WordPress gibt es unzählige Plugins. Doch viele wirken sich leider negativ auf die Ladezeit der Webseite aus.
Möchte man WordPress schneller machen, sollte man zunächst alle ungenutzen Plugins entfernen. Bei den verbleibenden Plugins kann man nach schlankeren Alternativen suchen oder diese selektiv laden. Generell sollte man so wenig Plugins wie nötig nutzen.
4. Datenbank bereinigen
Im Laufe der Zeit nimmt die Größe der Datenbank immer mehr zu und verlangsamt so die Datenbank-Abfragen. Folge: die Webseite wird immer langsamer.
Das liegt hauptsächlich daran, dass WordPress jeden Entwurf und jede Revision eines Artikels speichert. Auch die Spam-Kommentare und gelöschte Artikel werden gespeichert. Auch diese solltest Du daher regelmäßig löschen. Ein nützliches und empfehlenswertes Tool zum Bereinigen ist Advanced Database Cleaner, das ich selbst regelmäßig nutze.
Damit kannst du sehr gute verwaiste Tabellen von längst entfernten Plugins aufspüren und ggf. bereinigen.
Vorbeugend kann man auch die Anzahl der zu speichernden Artikel-Revisionen in der Datei wp-config.php
festlegen
define ('WP_POST_REVISIONS', 3 );
Wie du WordPress insgesamt entschlacken kannst, findest du in meiner Checkliste WordPress aufräumen.
5. Schriften reduzieren
Die Nutzung von Webfonts bietet großartige typografische Möglichkeiten. Ist aber häufig eine Tempo-Bremse: Jede eingebundene Schrift und jede Font-Variante verursacht Requests. Beschränke Dich am besten auf möglichst wenige Fonts.
Seit kurzem ist zudem nicht mehr DSGVO-konform, Fonts direkt über Google Server zu laden. D.h. du musst die Google Fonts lokal einbinden.
6. Selektives Laden von (Plugin-) Scripten
Viele WordPress-Plugins laden die benötigten Skripte leider auf allen Seiten, obwohl dies eigentlich nicht nötig ist. Eine sehr gute Lösung bietet hingegen das kostenlose Theme OceanWP. Denn damit kannst du Skripte und Stile je nach Bedarf ein- und ausschalten.
Auch viele Plugins laden leider grundsätzlich alles auf jeder Seite. Wie beispielsweise das beliebte Kontaktformular-Plugin Contact From 7. Es lädt auf jeder WordPress-Seite mehrere Dateien und führt so zu überflüssigen Requests. Das kann man jedoch ganz einfach durch einen Eintrag in der Datei functions.php des Child Themes verhindern.
Ich selbst füge den Code am liebsten in ein eigenes, separates Plugin ein. Wie das funktioniert, habe ich in der Anleitung Custom Functions erklärt.
Durch die Nutzung der Conditional Tags in WordPress kann bestimmt werden, auf welcher Seite ein Script geladen werden soll:
//Bindet die Plugin-Skripte nur auf der Kontakt-Seite ein
function remove_cf7(){
if (!is_page ('kontakt')) {
wp_deregister_script( 'contact-form-7' );
wp_dequeue_style ( 'contact-form-7' );
}
}
add_action( 'wp_enqueue_scripts', 'remove_cf7' );
Möchte man z.B. bestimmte Skripte auf der Startseite ausschließen, fügt man folgende Zeilen ein:
// Verhinder das Laden des Kommentar-Formulars auf der Startseite
if (is_home() || is_front_page())
wp_dequeue_script( 'comment-reply' );
Diese Vorgehensweise kannst Du auf sämtliche Skripts und sogar auf einzelne Template-Dateien übertragen. Weitere Informationen zu den Conditional Tags findest Du unter:
codex.wordpress.org/Conditional_Tags
6. Code komprimieren
CSS- und Javasscript-Dateien enthalten neben dem eigentlich Code auch Umbrüche und Kommentare, was sich auf die Dateigröße auswirkt. Mit Online-Tools kannst Du den Code per Copy & Paste einfach komprimieren:
Wer dies nicht manuell tun möchte, kann auch Plugins zur Performance-Optimierung (unter Punkt 7) nutzen.
7. Caching & Speed-Plugin einsetzen
Durch die Nutzung von Caching Plugins wie WP Fastest Cache oder WP Rocket lässt sich die Performance von WordPress-Webseiten enorm steigern. Ich habe verschiedene kostenlose Plugins getestet und konnte mit WP Rocket die besten Ergebnisse erzielen.
Neben Caching Optionen, bieten diese Speed-Plugins auch eine einfache Möglichkeit, viele wichtige Einstellungen vorzunehmen:
- Code-Komprimierung
- Zusammenlegen von CSS- und JS-Dateien
- Gzip-Komprimierung
- Setzen eines Expiry-Headers
- Keep-Alive aktivieren
- Asynchrones Laden von Scipts
- Nutzung eines CDNs
Viele kostenfreie Speed-Plugins bieten auch eine Premium-Version mit erweiterten Funktionen an. Getestet habe ich hiervon bisher nur WP Rocket und Swift Performance. WP Rocket ist im Vergleich zu W3 Total Cache sehr viel einfacher zu bedienen und erzielt die besten Ergebnisse. Eine absolute Empfehlung!
Alle Details zu meinen Speedtest findest du in dem Beitrag WordPress Caching Plugins im Test.
8. Bei statischen URLs keine Query Strings verwenden
Die meisten Proxy Server haben Probleme beim Cachen von URLs, die ein „?“ beinhalten. Dies betrifft vor allem .JS- und CSS-Dateien, wie beispielsweise die standardmäßig eingebundene JQuery-Datei:
wp-includes/js/jquery/jquery.js?ver=1.11.0
Umschreiben kann man die URLs durch folgende Code-Zeilen in der functions.php.
function _remove_query_string( $src ){
$parts = explode( '?ver', $src );
return $parts[0];
}
add_filter( 'style_loader_src', '_remove_query_string', 9999 );
add_filter( 'script_loader_src', '_remove_query_string', 9999 );
9. Hosting
Beim Hosting Deiner Webseite solltest Du auf einen passenden Tarif achten. Bei den günstigen Paketen teilen sich viele Webseiten-Betreiber einen Server, was sich auf die Ladezeit auswirkt. Oder das angebotene Memory-Limit reicht nicht aus.
Meine Seiten hoste ich bei All-Inkl und HostEurope – mit beiden Anbietern bin ich absolut zufrieden!
Wenn du aber einen wirklich schnellen Anbieter suchst, kann ich dir Raidboxes empfehlen. In meinem WordPress Webhoster Test war das der schnellste Anbieter.
10. Content Delivery Netzwerk (CDN) nutzen
Ein CDN bietet die Möglichkeit statische Inhalte wie Bilder oder JS/CSS-Dateien extern zu hosten und dadurch die Server-Last zu reduzieren.
Ich selbst nutze kein CDN, da ich mit der Speed-Optimierung meiner Webseite sehr zufrieden bin und daher auch keinen Bedarf sehe.
Fazit
WordPress-Tuning lohnt sich! Nachdem ich die Tipps unter 1.-6. umgesetzt hatte, lag mein Pingdom Speed-Score bei 80 und die Ladezeit der Webseite unter 1,5 Sekunden.
Um die Webseite noch schneller zu machen, habe ich diverse WPO-Plugins getestet. Lange Zeit habe ich W3 Total Cache genutzt und setze inzwischen auf WP Rocket. Nach der optimalen Einstellung des Plugins liegt mein Pingdom-Score nun bei 98 und die Ladezeit bei 397 Millisekunden.
Hast Du auch Tipps oder Empfehlungen, wie man seine Webseite bzw. WordPress schneller machen kann?