Snabba upp WordPress Caching och databasoptimering

En av de mest populära pratpunkterna i WordPress-communityet påskyndar WordPress och optimerar webbsidor. Jag tror inte att det finns en WordPress-blogg utan en "X Tips to Speed ​​Up WordPress" -artikel. Förse mig inte, det är bra. Men vi behöver bättre artiklar om detta ämne istället för tråkiga plugin-rundanvändningar.

Det kan se ut som ett annat "tips för att påskynda WordPress" -studiet, men i denna tredelade serien kommer vi att gå igenom alla aspekter av att optimera och påskynda din WordPress-webbplats.

Låt oss börja med det mest populära och förmodligen det enklaste: caching.

Caching i WordPress

Jag tycker att det är säkert att säga att detta är det mest populära ämnet när det gäller att påskynda WordPress. Beviljas, detta beror på de populära och lättanvända WordPress-cachepluggarna, men det är också en av de grundläggande teknikerna för att minska databasbelastningen och påskynda WordPress-webbplatser.

Vi kommer att komma tillbaka till cachepluggar, men låt oss titta på de två typerna av cachning: cachning på serversidan och caching på klientsidan.

Client-Side Caching

Client-sida caching är den typ av caching som dina besökares webbläsare gör. Det betyder att när besökare kommer till din webbplats lagrar deras webbläsare data om vissa delar av dina sidor. Medan webbläsare cachar några data automatiskt (som caching JavaScript och CSS-filer) kan vi göra finjustering med hjälp av .htaccess filer.

Genom finjustering av .htaccess fil, jag menar att lägga till "Expires" header i den. Du kanske har hört termen "Hantera webbläsarens caching" eftersom det ofta används i "Webboptimering" -tutorials, och det är ett högt prioriterat kriterium i Google PageSpeed-tjänsten.

Lyckligtvis behöver vi inte komma med dessa rubriker själva - det finns gott om kod redo för att "lånas" på webben. Jag gillar den i HTML5 Boilerplate, där rubrikerna delas upp av kategorier av filtyper:

# ------------------------------------------------- ----------------------------- # | Utgår rubriker | # ------------------------------------------------- ----------------------------- # Betjäna resurser med långt framtid utgår rubriker. # VIKTIGT: Om du inte kontrollerar versionen med filnamnbaserad cache # brytning, överväg att sänka cachetiderna till ungefär en vecka.  ExpiresActive on ExpiresDefault "Access plus 1 month" # CSS ExpiresByType text / css "access plus 1 år" # Datautbyte ExpiresByType application / json "access plus 0 sekunder" ExpiresByType application / ld + json "access plus 0 sekunder" ExpiresByType application / vnd .geo + json "access plus 0 sekunder" ExpiresByType application / xml "access plus 0 sekunder" ExpiresByType text / xml "access plus 0 sekunder" # Favicon (kan inte bytas!) och markörbilder ExpiresByType image / x-icon "access plus 1 vecka "# HTML-komponenter (HTCs) ExpiresByType text / x-komponent" åtkomst plus 1 månad "# HTML ExpiresByType text / html" access plus 0 sekunder "# JavaScript ExpiresByType applikation / javascript" access plus 1 år "# Manifest filer ExpiresByType program / manifest + json "access plus 1 år" ExpiresByType program / x-web-app-manifest + json "access plus 0 sekunder" ExpiresByType text / cache-manifest "access plus 0 sekunder" # Media ExpiresByType audio / ogg "access plus 1 månad "ExpiresByType image / gif" access plu s 1 månad "ExpiresByType image / jpeg" access plus 1 månad "ExpiresByType image / png" access plus 1 månad "ExpiresByType video / mp4" åtkomst plus 1 månad "ExpiresByType video / ogg" access plus 1 månad "ExpiresByType video / webm" plus 1 månad "# Webbmatar ExpiresByType program / atom + xml" access plus 1 timme "ExpiresByType program / rss + xml" access plus 1 timme "# Webfonter ExpiresByType program / font-woff" åtkomst plus 1 månad "ExpiresByType program / typsnitt -woff2 "access plus 1 månad" ExpiresByType application / vnd.ms-fontobject "access plus 1 månad" ExpiresByType application / x-font-ttf "access plus 1 månad" ExpiresByType typsnitt / opentype "access plus 1 månad" ExpiresByType image / svg + xml "åtkomst plus 1 månad"  

Placera dessa rader med kod i din .htaccess fil och du är bra att gå!

Server-Side Caching

När det gäller cachning i serverns sidor i WordPress kan vi prata om fyra stora typer av cachning: cachelagring av caching, databas caching, objekt caching och opcode (operation code) caching. Sourav Kundu förklarar detta i sin artikel på WP Explorer, men låt oss sammanfatta:

  1. Sida Caching: I grunden skriver WordPress dina sidor genom att fråga databaser och laddar resultaten. Sidkachning lagrar dock varje sida som HTML-filer i serverns lokala lagring (hårddisk eller RAM) och serverar de HTML-filer som motsvarar dina sidor varje gång besökarna besöker din webbplats.
  2. Databas Caching: Medan databaser är "hjärnorna" på en WordPress-webbplats där alla data lagras, är det inte särskilt effektivt när WordPress gör det samma oföränderliga frågan om och om igen på varje sida och för varje besökare. Databascaching sparar och tjänar resultaten av dessa frågor och uppdaterar resultaten när en ändringsfråga görs.
  3. Objekt Caching: Detta är ett internt API för WordPress som tillåter plugins att lagra data om dyra sökfrågor i minnet. Det är lite irrelevant för vår serie - kanske kommer vi att gå igenom det här i en separat handledning i framtiden.
  4. Opcode Caching: Precis som du lägger till mjöl, vatten, ägg, socker och whatnot varje gång du baka en tårta, är koderna i dina PHP-filer instruktioner för att "kompilera" och göra dina önskemål. Opcode caching är den typ av caching som lagrar den sammanställda koden, vilket påskyndar processen väsentligt.

WordPress-plugins på caching

Våra huvudkategorier är aspekter för att påskynda WordPress, så det kan vara off-topic att granska plugins. Det är dock en bra idé att prata om ett par plugins i varje kapitel. När det gäller cachning vet jag att du redan vet de två mest populära plugins:

  1. WP Super Cache: Detta är det mest populära caching-plugin för WordPress, med över 6 miljoner nedladdningar och ett 4,2 stjärnor som jag skriver denna artikel. Enkelt uttryckt fungerar WP Super Cache genom att generera statiska HTML-filer på dina sidor och uppdatera dem med ett intervall som du anger (en timme som standard). Det fungerar som magi ur lådan även i delade värdar, men kanske inte tillräckligt för webbplatser med hög trafik.
  2. W3 Total Cache: Som den näst mest populära plugin med nästan 4 miljoner nedladdningar och ett 4,5 stjärnor, är W3 Total Cache det typ av plugin som är mer lämpligt för högtrafikwebbplatser som körs från en VPS eller en bättre värdmiljö. Med sitt brett utbud av inställningar och stöd för högpresterande cache-alternativ kan det vara den bästa lösningen för dig om du vet vad du gör. Om du inte är bekant med jargongen i inställningarna, kan du dock också använda den ur lådan och inte ändra några alternativ, eller du kan bryta ditt front-end.

Optimera databasen i WordPress

Databaser är hjärnorna på din webbplats: De lagrar de värdefulla data som du visar på dina sidor. Statiska HTML-webbplatser lagrar sina data inuti sidorna, men innehållshanteringssystem måste förlita sig på databaser (SQL, NoSQL, XML, JSON och liknande) för att lagra våra data. WordPress är ingen annorlunda-det använder MySQL för att lagra det statiska och dynamiska innehållet tillsammans med din webbplatsinformation, WordPress-inställningar, användaruppgifter och så vidare.

Databaser är en kraftfull standard för att behålla, betjäna och ändra dina data, men om du använder dem fel och glömmer att behålla dem kan de få fett och uppblåst. Och som någon annan programvara behöver WordPress underhåll också. WordPress bygger inte upp för mycket uppblåst i databasen, men det betyder inte att det inte kommer att sakta ner din webbplats.

Du behöver hålla ett öga på dina postrevisioner, skräp av inlägg, sidor, kommentarer, etc., och någon annan form av "gammal" data. Och nu och då måste du kolla din "databaskostnad", som ofta jämförs med defragmentering av hårddisken eller att ändra din bils olja.

Det är möjligt att behålla alla dessa manuellt: Du kan tömma soporna, inaktivera funktionen "revisions", ta bort spamkommentarer och optimera databaskostnaden genom att logga in på phpMyAdmin, men det är inte en optimerad teknik för databasoptimering. I stället kan du använda ett WordPress-plugin för att göra allt arbete.

Det finns mer än några plugins som gör att du kan optimera din databas med ett klick eller till och med automatiskt. Den jag gillar mest är WP-Optimera: Det rengör automatiskt och optimerar din databas utan problem.

WP-Optimize listar huvudfunktionerna enligt följande:

  • Avlägsnande av inaktuella övergångar
  • Avlägsnande av inaktuella obehöriga och spam kommentarer
  • Avlägsnande av skräp kommentarer
  • Avlägsnande av Akismet-metadata från kommentarer
  • Avlägsnande av andra vanliga metadata från kommentarer
  • Mobil enhetvänlig, nu kan du optimera din webbplats på språng
  • Avlägsnande av alla trackbacks och pingbacks
  • Rengöring av autoutkaststolpar
  • Avlägsnande av övergående alternativ
  • Rensa papperskorgen
  • Automatisk rengöring av alla integrerade alternativ (använder också lagring om den är aktiverad)
  • Förmåga att hålla utvalt antal veckor data vid rengöring
  • Alternativ för att lägga till eller ta bort länk på wp admin bar.
  • Aktivera / inaktivera veckotabeller för optimering
  • Applicera native WordPress MySql optimera kommandon på dina databas tabeller utan phpMyAdmin eller någon manuell fråga.
  • Visa databastabellstatistik. Visar hur mycket utrymme som kan optimeras och hur mycket utrymme har rensats.
  • Aktiverad endast för administratörer.

Var noga med att kolla in andra databasoptimeringsprogram, men var inte försumlig om att behålla din databas.

Fortsätt till del 2

I nästa del av serien ser vi på aspekterna av komprimering och minifiering och använder CDN för att göra din WordPress-webbplats snabbare.

Vad tycker du om att påskynda WordPress? Dela dina tankar nedan i kommentarfältet. Och om du gillade artikeln, glöm inte att dela den.