Så får du WordPress snabbare

WordPress är inte bara det vanligaste CMS-systemet bland Surftowns kunder, utan det är också det mest använda i hela världen – utav de en miljon mest besökta webbsidorna på Internet, så använder nästan 15% WordPress.

En av de vanligaste frågorna vi får angående WordPress är hur man kan snabba upp sin sida. En stor del beror ju naturligtvis på våra webbservrar, men det finns en del saker som man själv kan göra för att snabba upp sidan rejält.

Som exempel så har jag valt att använda min kollega Alexias blogg. Alexias blogg är som de flesta andra, med diverse tillägg, massor av bilder, kommentarspam, och allehanda anekdoter om allt och ingenting. Som utgångspunkt, så laddas sidan på dryga 4,2 sekunder ifrån en testserver i Amsterdam.

Utav de 4,2 sekunderna, så går 1,05 till att skapa själva index-filen, dvs. till att läsa in hela WordPress kärna, avgöra vad som skall visas för besökaren, samt hämta allt innehåll ifrån databasen. Härnäst, så hämtas i allt 88 filer ifrån webbservern – en total datamängd på 9,5 MB (vilket tar ca. tre sekunder att hämta med en vanlig ADSL-anslutning).

Det finns en hel mängd olika sätt att snabba upp processen. För enkelhets skull så har jag delat upp dem i svårighetsgrader: nybörjare och erfarna användare.

Nybörjare – Installera ett caching-tillägg
Det finns en uppsjö av olika cachingtillägg för WordPress. De två vanligaste heter WP Super cache och W3 Total cache. Bägge är gratis, och debatten om vilket tillägg som ger den bästa prestandavinsten har rasat i åratal, och kommer antagligen att fortsätta i några år till.

Grundprincipen är densamma – tilläggen sparar resultatet av sidvisningar så att det är klart med en gång nästa gång någon vill komma åt dem. Detta sparar tid eftersom WordPress inte behöver laddas varje gång , och man helt enkelt kan visa resultatet med en gång och utan fördröjning. Hos Surftown så har vi testat bägge, och har kommit fram till att båda fungerar, men att WP Super cache är betydligt lättare att konfigurera, och vi rekommenderar därför detta plugin framför W3 Total cache. För god ordnings skull så avråder vi kunder ifrån att ha mer än ett caching-tillägg installerat.

WP Super cache kan installeras snabbt och enkelt via WordPress administrations-sida. När det är installerat och aktiverat, så dyker det upp en liten notifikation om att caching inte har aktiverats ännu. För att komma vidare, så skall man klicka på länken, aktivera caching, och sedan spara inställningarna genom att trycka på ’Uppdatera status’:

1

2

Nästa gång en sida laddas så kommer WordPress nu att spara resultatet av sidvisningen, så att det finns redo för andra besökare. I Alexias fall så sänkte detta tiden för att skicka index-filen ifrån 1,05 sekunder till 66 milisekunder! Den totalla laddningstiden på sidan hamnade därmed på ca. 3,3 sekunder.

Nybörjare – Installera Lazy Load
Normalt sett så laddar en webbläsare in samtliga bilder på en webbsida med en gång när sidan visas. Detta sker oavsett om bilderna ligger i toppen eller i botten av sidan, och oavsett om besökaren ser bilden eller ej.

För att råda bot på detta så har det skrivits en uppsjö av tillägg som ger en effekt som kallas ”Lazy load” – bilder, som ligger t.ex. i botten av sidan laddas inte in förrän användaren scrollar ned och rent faktiskt tittar på den. Det finns många olika att välja på, men vi rekommenderar pluginet som heter just Lazy Load av den enkla anledningen till att vi har testat det och vet att det fungerar. Lazy load kan lätt installeras via administrationssidan

För Alexias blogg, som har en stor mängd bilder på sig, så märkte vi skilladen direkt: antalet filer som hämtades med en gång gick ifrån 88 till 72, och storleken på sidan gick halverades, och hamnade på 4,6 MB! Laddningstiden följde efter, och hamnade på strax över 1,3 sekunder.

Bilderna laddas ju naturligtvis in när man scrollar ned på sidan, men effekten går inte att ta miste på – sidan laddas betydligt mjukare än tidigare.

Erfarna användare – ställ in WP Super Cache till att vara ännu snabbare
Vi kan nu konstatera att de två första åtgärderna har skurit ned laddningstiden med två tredjedelar, och att det kanske är nog. För de av oss som hellre vill klicka på fliken ”Avancerat” så finns det emellertid några extra millisekunder att hämta!

Till att börja med så rekommenderar vi att man slår över WP Super Cache till att använda mod_rewrite. Detta gör att man använder webbserverns inbyggda funktionalitet för att skicka .html-filer direkt, istället för att först ladda in PHP och slösa dyrbara millisekunder på att göra något som kan göras snabbare:

3

När man har sparat inställningarna så är det viktigt att man väljer att uppdatera .htaccess, då mod_rewrite inte fungerar utan uppdateringen:

4

Lite längre ned på sidan så kan man styra hur länge en sida skall sparas innan den tas bort ifrån cachen. Standard är fem minuter, men sidor som uppdateras mer sällan kan med fördel ställas in till att cachas i en timme, ett dygn, eller en hel vecka, utan att det ger problem:

6

Totalt så lyckades vi med att få ned Alexias blogg till en laddningstid på 1,26 sekunder ifrån de ursprungliga 4,26 sekunderna – en förbättring på nästan 70%!

Vad är ditt bästa tips på att snabba upp WordPress?