Es wird mal wieder nerdig! Im Hintergrund wurde kräftig an der Performance-Schraube dieses Blogs gedreht. Der neue Trend im Bereich Suchmaschinenmarketing hat nicht nur gute Auswirkungen in den Google-Ergebnissen, sondern – und das ist das eigentlich tolle – bei der Usabillity und der generellen Performance.
Mal ehrlich, nichts ist ärgerlicher als eine Website, die träge reagiert und deren Datenvolumen – insbesondere für Mobil-User – einfach zu immens ist. Wenn man mit dem Smartphone eine Website besucht und eine responsive Ansicht mit angepasstem Layout erhält, dann ist man als User sicherlich dankbar, wenn für diesen einen Blick auf die Website nicht gleich 3 MB auf der Traffic-Uhr auflaufen.
PageSpeed Optimierungen mit Google Tool
Das Zauberwort heißt also PageSpeed Optimierung. Google stellt hier ein ziemlich gutes Tool zur Verfügung mit dessen Hilfe man Probleme der eigenen Website feststellt und diese dann sukzessive abarbeiten kann: PageSpeed Insights.
Die Analyse macht Empfehlungen hinsichtlich der allgemeinen Browserperformance (CSS, Skripte im Footer), gibt Tipps für eine komprimierte Auslieferung der Daten (gzip) und empfiehlt unter anderem Bilder mit einem Ablaufdatum zu versehen, welches das Caching beeinflusst.
Zudem gibt es eine Wertung für die Nutzererfahrung, welche besonders interessant für Smartphone-User ist. Mögliche Kritierien sind hier ausreichend große Touch-Flächen für Links und Buttons, Schriftgrößen, Verzicht auf Flash-Technik usw.
WordPress Performance verbessern
Konkret erfüllt das WP-System hinter dem Lolliblog derzeit zwar noch keine 100% in beiden Testbereichen, aber insbesondere bei der Performance wurden deutliche Verbesserungen festgestellt. Nachfolgend einige Tipps:
Auslagern der jQuery Scripte in den Footer
function md_footer_enqueue_scripts() { remove_action('wp_head', 'wp_print_scripts'); remove_action('wp_head', 'wp_print_head_scripts', 9); remove_action('wp_head', 'wp_enqueue_scripts', 1); } add_action('wp_enqueue_scripts', 'md_footer_enqueue_scripts');
Entfernen von überflüssigen Plugin-CSS (YARPP + Faviroll) via Hook
function lm_dequeue_header_styles() { wp_dequeue_style('yarppWidgetCss'); wp_deregister_style('faviroll'); } add_action('wp_print_styles','lm_dequeue_header_styles');
Entfernen von überflüssigen Plugin-CSS im Dashboard
Teilweise kann das Laden von Plugin-Stylesheets auch in den Einstellungen des jeweiligen Plugins deaktiviert oder nur bei bestimmten Unterseiten erlaubt werden. Im Lolliblog war das beim Plugin für die Share Buttons (Simple Share Buttons Adder) und beim Crayon Syntax-Highlighter so möglich.
Caching mit WP Super Cache
Man kann mit dem Plugin WP Super Cache viel falsch machen. Wenn man es hingegen richtig und für seine individuellen Bedürfnisse perfekt konfiguriert, dann erhält man ein sauberes Ergebnis mit vielen kleinen Verbesserungen im Detail. Nachfolgend meine aktuellen Settings:
- Nutze PHP um Cache-Dateien auszuliefern.
- Komprimiere Seiten, so das sie schneller an Besucher ausgeliefert werden.
- 304 Not Modified Browser Caching. Stelle fest wenn eine Seite seit dem letzten Aufruf nicht modifiziert wurde. (Empfohlen)
- Seiten für bekannte Benutzer nicht cachen. (Empfohlen)
- Don’t cache pages with GET parameters. (?x=y at the end of a url)
- Cache neu erstellen. Liefert eine Supercache-Datei an anonyme Besucher aus, während eine neue Datei erstellt wird. (Empfohlen)
- Clear all cache files when a post or page is published or updated.
Wie sich das ganze jetzt möglicherweise auf die Suchmaschinen-Platzierung auswirkt, werde ich zunächst etwas beobachten müssen. Die Speed-Optimierungen waren aber in jedem Fall eine sehr sinnvolle Arbeit. So sind mir auch einige Fehler aufgefallen, wie das Laden der Originalbilder anstelle der Post-Thumbnails auf der Startseite bei bestimmten Beiträgen. Eine Analyse lohnt sich also immer…
Feine Sache, damit habe ich mich auch gerade beschäftigt. WP Super Cache ist nicht ganz so einfach zu handhaben finde ich, wann sich der Cache leert und wann nicht ist etwas undurchsichtig. Sonst macht das Plugin aber einen guten Job.