Montag, 24. Mai 2010, Geschrieben von adkorte, 24 Kommentare
Bild: mikebaird, Lizenz
Je mehr Artikel und Kommentare ein Blog hat und je mehr Besucher sich gleichzeitig auf ihm tummeln, umso langsamer wird das mit WordPress erstellte Lieblingsstück.
Und je langsamer ein Blog ist, umso uninteressanter ist er für Besucher und umso schlechter wird er bei Suchmaschinen platziert.
Höchste Zeit also, etwas gegen immer schlechtere Ladezeiten zu tun!
Ich verzichte hier jetzt allerdings auf irgendwelche tiefen Analysen mit komplizierten Prognosen und Erklärungen.
Ich schreibe hier das auf, wonach ich lange gesucht habe, aber nie fündig wurde: 5 einfache Tricks, mit denen ich meinen WordPress-Blog schneller machen kann.
Ergebnis vergleich können
Damit du dein Ergebnis am Ende auch vergleichen kannst, empfehle ich das Ladezeiten-Tool von Pingdom. Mit diesem Tool solltest du einmal vor den Änderungen überprüfen wie schnell (oder langsam) deine Seite war. Und diesen Test gilt es auch nach den Änderungen noch einmal zu wiederholen.
Die Ergebnisse des Test brauchst du dabei nicht notieren, du kannst sie in einer History unten rechts nachvollziehen.
1) JavaScript muss raus um die Ladezeiten zu verringern!
JavaScript (bzw. jQuery) wird in den meisten Fällen dafür sorgen, dass die Ladezeiten noch langsamer sind.
Du solltest dir dabei die Frage stellen, ob du wirklich soviel JavaScript brauchst: Ist eine Lightbox für die Bilder notwendig? Kommst du nur mit jQuery-Slidern auf der Startseite aus? Und brauchen deine Besucher wirklich irgendwelche komischen Tooltips?
In den meisten Fällen (und davon gibt es deutlich mehr als die drei oben genannten) lautet die Antwort “Nein”. Zusätzlich solltest du immer bedenken: Es gibt immer noch Besucher, die JavaScript vollständig deaktiviert haben und dann eh nichts sehen.
Und wenn du die ganzen JavaScript-Dinge nicht brauchst, dann kannst du sie auch gleich entfernen. Denn jeder Codeschnipsel JavaScript (und dazu gehört auch Google Analytics, etc.) verursacht deutlich längere Ladezeiten.
Wenn schon, dann Google
Wenn du auf jQuery nun wirklich nicht verwenden kannst, dann solltest du das wenigsten nicht auf deinem eigenen Server hosten. Es gibt Anbieter, die das besser können.
Hierzu zählt Google: Google bietet im Rahmen von Google Code den Zugriff auf jQuery an.
Ersetze den Aufruf von jQuery in deinem Header einfach durch diesen Google-Dienst:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
Google kann das wirklich besser und schneller, die Ladezeiten (also auch Besucher und dann auch wieder Google) werden’s dir danken!
2) Dateigrößen verkleinern und WordPress schneller machen
Kannst du dir vorstellen, wieviel Extra-Bytes nur durch Leerzeichen, Tabulatoren, etc. verwendet werden?
Ich kann dir die Zahl nicht sagen, aber sie ist enorm!
Diese Leerzeichen machen bei der Programmierung auch viel Sinn, halten Sie den Quelltext doch schön übersichtlich und erleichtern das Arbeiten so ungemein.
Aber ist erst einmal etwas fertig gestellt und muss nicht mehr geändert werden, so verursachen diese Leerzeichen dann doch nur längere Ladezeiten.
Aber das kann man umgehen! Das Zauberwort heißt hier “Code-Komprimierung”! Leerzeichen haben nichts mehr im Quelltext verloren!
Und wieder einmal ist es Sergej Müller, der mit einem kleinen Online-Tool diese Code-Komprimierung zu einem Kinderspiel macht: Einfach im Code Compressor den eigenen CSS- und JavaScript-Quelltext (wobei wir JavaScript ja eigentlich doof finden und deshalb ganz weglassen) in das Textfeld kopieren und die Kompressionsstufe auswählen. Den komprimierten Code kann man dann in die entsprechende Datei einfügen und diese aktualisieren.
Die Ergebnisse sind erstaunlich: Der Browser hat mit der Komprimierung überhaupt keine Probleme, aber die Dateigröße wird um bis zu 70% reduziert.
3) Bilder verkleinern und WordPress beschleunigen
Perfekte Bilder. Für Fotografen und auf riesen Displays oder für den Druck mag das noch wichtig sein. Für’s Web ist es in den meisten Fällen aber nicht!
Da verursacht ein 300kB großes JPEG – auch bei Breibandverbindungen – nur lahme Ladezeiten und wenig Freude beim Besucher!
Doch es muss auch nicht ein 300kB großes JPEG sein, um den Blog mit Bildern zu beleben!
Das richtige Dateiformat
JPEG und GIF sind out, BMP war noch nie etwas für’s Web!
Doch gibt es seit 2004 das Format PNG (Portable Network Graphics), das leider noch viel zu wenig genutzt wird!
Denn PNG kann verlustfrei komprimieren (z.T. stärker als GIF) und unterstützt zudem noch Transparenz über den Alphakanal.
Daher die Devise: Immer PNG nutzen! Und nach Möglichkeit auch alle Bilddateien im Blog nach und nach durch PNGs ersetzen!
PNG beim alten Internet Explorer
Microsoft wäre nicht Microsoft, wenn nicht… Na egal: Ich als Mac-Nutzer kann wieder nur ablästern.
Doch um bei den Fakten zu bleiben: Der Internet Explorer in den älteren Versionen unterstützt PNG einfach nicht, bzw. die Transparenz der PNGs nicht.
Das muss man den Browsern mit Versionsnummer 6 und niedriger dann noch beibringen.
Für diesen PNG-fix gibt es vielfältige Möglichkeiten. Einfach mal Google & Co. befragen!
Auch bei PNG geht noch was
Die Standard-Kompressionen aus den unterschiedlichen Bildbearbeitungsprogrammen sind häufig leider nicht optimal und es lässt sich noch viel überflüssige Information beseitigen.
Hierzu gibt es (sowohl für PC, als auch für Mac) eine ganze Reihe von kleinen Helferlein, die diese Arbeit und kompliziert, aber verlässlich übernehmen.
Einfach mal in einer Suchmaschine danach suchen und für alle “Macianer”: Sergej hat letztens erst ein solches Tool vorgestellt!
4) WordPress cachen und schneller machen
Ein Großteil von Geschwindigkeit und Traffic geht bei WordPress durch die immer gleichen Anfragen verloren. Stellt euch einmal vor, 5 Besucher schauen sich innerhalb von 2 Minuten exakt die gleiche Seite an. Dann liefert WordPress in diesen 2 Minuten genau 5-mal exkat die gleiche Seite aus. Mit den gleichen Bildern, mit den gleichen Datenbankabfragen usw. Viermal wird dann Traffic verursacht, der schon beim ersten Mal verursacht wurde.
Doch auch diesen Überfluss kann man abstellen. Caching ist hier das Zauberwort.
Und wieder einmal bieten ganz viele Programmierer mit ihren WordPress-Plugins ganz viele unterschiedliche Lösungen an.
Da ich nicht alle Lösungen ausprobiert habe, aber mit einer ganz zufrieden bin, empfehle ich an diese Stelle einmal “W3 Total Cache“, mit dessen Arbeit ich ganz zufrieden bin.
Aber Achtung: Nur unter PHP5 funktionieren alle Features einwandfrei und ihr solltet ggf. mit eurem Provider vorher klären, ob der Webspace alle benötigten Einstellungen und Möglichkeiten mitbringt.
5) WordPress-Datenbank sauber halten und beschleunigen
Mit jeder neuen Version bringt WordPress eine Reihe von angenehmen Features mit, die das Schreiben deutlich erleichtern. Doch in aller Regel sind diese Features auch mit mehr Arbeit für die Datenbank verbunden.
So ist es etwa bei der Funktion der sog. “Revisionen”: WordPress speichert beim Schreiben eines Artikels automatisch und auf Befehl immer die aktuellste Version. So kann man sichergehen, dass auch bei einem möglichen Browserabsturz alle Änderungen auch noch gespeichert sind.
Allerdings wird mit jedem Speichern des Artikels eine sog. Revision auch in der Datenbank gespeichert. Bei meiner Arbeitsweise etwa können das schnell mal bis zu 50 Revisionen pro Artikel sein.
Und die WordPress-Datenbank bläht sich dann auf, denn WordPress löscht beim Veröffentlichen eines Artikels die Revisionen nicht automatisch.
Abhilfe schafft hier jedoch das Plugin “Delete Revision“: Es löscht auf Befehl alle Revisionen aus der Datenbank und minimiert die Datenbanklast so enorm. Außerdem bringt das Tool gleichzeitig einige nette Features zur Datenbank-Optimierung mit, sodass man phpMyAdmin, etc. in den meisten Fällen gar nicht mehr braucht.
6) gzip-Komprimierung aktivieren
Mit einem WordPress-Update ist vor einiger Zeit leider die Standard-Option der gzip-Komprimierung verloren gegangen. Denn diese Komprimierung ist doch so wichtig!
Denn wie auch bei Bildern oder CSS-Dateien gilt auch bei allen anderen System-Dateien: Je kleiner, umso besser. Und mit gzip können nun einmal alle Suchmaschinen und Browser auch etwas anfangen und finden es sogar gut, wenn diese Komprimierung aktiviert ist.
Wer also mitdenkt, der aktiviert die gzip-Komprimierung auch dann, obwohl sie nicht mehr Standard-Feature von WordPress ist.
Im Prinzip gibt es hierfür zwei Möglichkeiten.
gzip über .htaccess aktivieren
Eine erste Möglichkeit ist, alle Dateien über einen Eintrag in der .htaccess (bei den meisten Apache-Servern die Regel, aber Ausnahmen bestätigen eben solche) ins gzip-Format zu bringen.
Da gibt es beispielsweise diese Möglichkeit (gefunden bei perun):
<FilesMatch "\\.(js|css|html|htm|php|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>
Aber es gibt auch viele andere Varianten. Hier würde auch eine Suche bei Google & Co helfen.
gzip mit WordPress-Plugin
Wer von diesem ganzen Apache-Kram keine Ahnung hat und sich damit auch nicht weiter beschäftigen will, der kann wieder einmal auf eines der zahlreichen WordPress-Plugins zurückgreifen.
Sergej bietet mit wpCompressor ein sehr einfaches Plugin an, das schon eine erste gute Wahl ist. Beachten sollte man hierbei allerdings, dass das Plugin von Sergej nur die Beiträge, nicht aber CSS- oder JavaScript-Dateien komprimiert.
Besser wäre da tatsächlich die .htaccess-Variante, aber besser als gar nichts ist wpCompressor allemal.
7) WordPress-Plugins deaktivieren
Jedes Plugin braucht Serverleistung. Das eine mehr, das andere weniger. Und wie schon bei den Sicherheitstipps für WordPress gilt auch hier: Je weniger Plugins aktiviert sind, umso besser!
Deshalb schaut nach, ob ihr wirklich alles braucht, was da so aktiviert ist. In vielen Fällen wird die ehrliche Antwort ein klares “Nein” sein!
Noch viel mehr Tipps und Tricks
Diese sieben Ratschläge von mir waren lange noch nicht das Ende der Fahnenstange. Man kann noch viel mehr machen!
Doch waren diese sieben Ratschläge diejenigen, die auch mir bei der Umsetzung am leichtesten gefallen sind.
Wer sich für mehr interessiert, der wird im Internet schnell fündig. Zum Beispiel hier:
Eure Erfahrungen beim Beschleunigen von WordPress
Und? Wie sieht’s aus? Konntet ihr mit meinen Tipps euren WordPress-Blog noch schneller machen?
Ich freue mich auf euer Feedback!
Dieser Beitrag wurde am 24. Mai 2010 geschrieben und ist abgelegt in der Kategorie Tipps & Tricks.
Du kannst über neue Kommentare informiert werden, wenn du den RSS 2.0 Feed abonnierst!
Du kannst 7 Tipps: WordPress beschleunigen kommentieren, oder einen Trackback von deiner Seite setzen.
24. Mai 2010 16:12