Értesítés, hogy le ne maradj semmiről! Iratkozz fel és értesülj azonnal a legfrisebb tartalmakról! Nálunk te döntöd el, miről kérsz értesítést! Feliratkozok Többet szeretnék megtudni
Dev

Hogyan gyorsítsuk fel WordPress weboldalunkat?

Több kutatás is bizonyítja, hogy a lassú weboldal jelentősen csökkenti a felhasználók oldalon végrehajtott interakcióinak a számát, például egy 2020-as amerikai kutatás szerint a vásárlók 90%-a elhagyja a túl lassan betöltődő webshopokat, illetve a Google mérései szerint ha az oldalbetöltési idő megnő 500 ms-al, akkor 20%-kal kevesebb keresést hajtanak végre a felhasználók.

Ennek megfelelően érdemes saját weboldalunk sebességét is felmérni és szükség esetén javítani azon. Jelen cikkben összeszedjük, hogy milyen dolgokkal lehet javítani egy WordPress alapú weboldal sebességén.

1. Webtárhely, hosting

Kétségkívül az egyik legfontosabb dolog az, hogy a webtárhely, melyen az oldalunk van megfelelő legyen. Gondoljunk csak bele, ez a szerver lesz az, amely a webhely összes adatát tárolja és vele fognak kapcsolatba lépni az oldal látogatói is. Ennek megfelelően a hosting alapvetően befolyásolja a weboldalunk sebességét.

Íme néhány dolog, amit figyelembe kell venni webtárhely választásakor:

Olyan kiszolgálót válassz, mely közel van a látogatóidhoz

Az egyik legalapvetőbb dolog, webtárhely választása előtt, hogy meghatározzuk, honnan érkeznek weboldalunkra a látogatók többsége.

Mivel a weboldal fájlainak és oldalainak a webtárhelytől a látogatók eszközéig kell eljutniuk, így jelentősen csökkenthető a számukra érzékelt betöltési idő, ha olyan hostingot választunk, ami a közelükben található. Például egy többségében magyar látogatók álta nézett oldalt érdemes Magyarországon található szerveren elhejezni.

A közelség természetesen nem csak földrajzilag érthető, hanem technikailag is: minnél közvetlenebb eljutási lehetőség áll rendelkezésre a webtárhely és a látogatók közötti hálózaton keresztüli adattovábbításra, annál kisebb lesz a weboldal késleltetése. Más szavakkal, a hálózat is befolyásolja, hogy mennyi időbe telik, amíg egy adatcsomag egyik pontról a másikra eljut. Például ha a forgalom nagy része Magyar Telekom és Vodafone Magyarország hálózatából érkezik, akkor érdemes olyan kiszolgálót választani, ami közvetlenül kapcsolódik a Magyar Telekom és Vodafone Magyarország hálózatához is.

Manapság ezt az időt általában ezredmásodpercekben mérik; a hálózattól függően azonban másodpercek is lehetnek. Minél közelebb van az érték a nullához, annál gyorsabb lesz az oldalunk betöltődése.

Mit ellenőrizzek?

1. Ellenőrizd a látogatók földrajzi helyét Google Analytics szolgáltatással: Az egyik legelső lehetőség, hogy megvizsgáljuk a látogatóinak földrajzi helyzetét a Google Analytics szolgáltatás segítségével, ahol részletes statisztikát találunk mind a látogatók földrajzi helyéről mind arról, hogy milyen hálózaton át érik el weboldalunkat.

2. Mérd meg a weboldalad késleltetését különböző földrajzni helyekről: természetesen ehhez nem kell körbeutaznunk a földet, rengeteg ingyenes eszköz létezik a késés mérésére, melyekkel képet kaphatunk a weboldalunk késleltetési idejéről a föld külömböző pontjai esetében.

Tárhely csomag választás

A kiszolgáló helyén és hálózati kapcsolatain kívűl fontos még az is, hogy az jól legyen beállítva. Itt az egyik legfontosabb, hogy olyan teljesítményű tárhelyet válasszunk, ami megbírkózik az oldalra érkező forgalommal a legleterheltebb időszakban is. Ha ez nem biztosított, akkor a weboldal könnyen lelassulhat ezekben az időszakokban, rosszabb esetben a látogatók egy része 500-as vagy időtúllépési hibát kaphatnak az oldal tartalma helyett.

Mit ellenőrizzek?

1. Ellenőrizd mely időszakokban érkezik a legtöbb látogató az oldaladra Google Analytics szolgáltatással: A Google Analytics szolgáltatás ebben az esetben is a segítségünkre siet, és könnyen képet kaphatunk, hogy weboldalunknál mely időszakokban van a látogatottsági csúcs, mely alapján mehatórozhatjuk a szükséges szerver-kapacitásokat.

Tárhely beállítások

Webtárhely esetén fontos még hogy engedélyezzük a tömörítési eljárásokat (például: GZIP), mellyel jelentősen csökkenthető az oldal látogatói számára küldendő adat mennyisége. Modern protokollok beállításával (http 2.0) tovább csökkenthető a késleltetési idő, míg a böngészők számára jó cache beállítások küldése lehetővé teszi, hogy a látogatóknak ne kelljen minden egyes alkalommal minden fájlt lekérniük a webtárhelytől. Ezzel az átvitt fájlok számának csökkentésén kívűl a tárhelyünk terheltségét is csökkenthetjük.

Mit ellenőrizzek?

1. Ellenőrizd a tömörítési eljárások bekapcsoltságát: tárhelytől függően ez különböző módokon tehető meg.

2. Ellenőrizd a használt protokollokat: A böngésződ hálózatelemző részén könnyen ellenőrizheted, hogy weboldalad milyen protokollon át érhető el.

3. Ellenőrizd a cache beállításokat: A legegyszerűbb módszer rá a Google Lighthouse szolgáltatás használata.

2. Képek, scriptek, fájlok

A tárhely gyors elérése után az sem mindegy, hogy mekkora fájlokat kell a látogatók eszközeire eljuttatni. Minél kisebbek a fájlméretek, és minél kevesebb van belőlük, annál gyorsabb lesz a weboldal betöltési sebessége.

Scriptek, kódok minifikálása

JavaScript, CSS és hasonló fájlok esetén a legegyszerűbb eljárás, amit használhatunk a kódok minifikálása. Ez leegyszerűsítve annyit jelent, hogy a kódból kiszedjük azokat a felesleges részeket, melyek hiánya nem befolyásolja az oldal működését. Ezek mellett fontos, hogy minél kevesebb ilyen fájl legyen a weboldalunkon.

Mit ellenőrizzek?

1. Ellenőrizd a kódok minifikáltságát: Ebben az esetben is a Google Lighthouse szolgáltatás siet a segítségünkre.

Képek, videók

Képek és videók gyakran jelentős mértékben járulnak hozzá az oldalak betöltési sebességeihez, mivel gyakran nem megfelelően alkalmazzák őket. A nagyméretű képek lelassítják a weboldalakat. A képek optimalizálása során a fájlméret jelentős csökkentése érhető el, mellyel gyorsítható azok betöltődése. Ezt általában a megfelelő felbontás beállításával, megfelelő (veszteséges vagy veszteségmentes) tömörítés alkalamzásával, illetve modern és a kép tartalmához illeszkedő formátum választásával érhető el.

Mit ellenőrizzek?

1. Ellenőrizd a képeket, videókat: Ebben az esetben is a Google Lighthouse szolgáltatás siet a segítségünkre.

3. WordPress

 

Témák, sablonok

A sok dinamikus elemet, csúszkát, widgetet, közösségi ikonokat, animációkat stb. tartalmazó WordPress-témák rendkívüli módon meg tudják növelni az oldalméret, ami jelentősen növeli a látogatók számára kiszolgálandó adat mennyiségét, ezáltal lassítja a weboldal betöltési időt.

Egy jó WordPress-téma csak a szükséges funkciókat tartalmazza, vagy letilthatóak benne azok a funkciók, amelyek nincsenek használatban.

Mit ellenőrizzek?

1. Ellenőrizd a weboldaladon használt témát: mennyi felesleges, nem használt elemet tölt be 1-1 oldalbetöltésnél? Hány különböző betűtípust és külső könyvtárat tölt be a téma? Itt is jó kiindulási alap lehet a Google Lighthouse.

Bővítmények, Plugin-ek

A bővítményekről általános vélekedés, hogy minél több található belőlük, annál lassabb lesz a WordPress-es weboldal. Ez kétségkívül igaz, de bővítmények esetén általában egyáltalán nem azok mennyiségével, hanem a minőségükkel van probléma. Egy rosszul optimalizált bővítmény önmagában képes akár több másodpercre megakasztani az oldal betöltését, de kevésbé drasztikus esetben is jelentős növekedés következhet be az oldalbetöltési időben.

Mit ellenőrizzek?

1. Ellenőrizd a weboldaladon használt bővítmények szükségességét: a felesleges bővítményeket kapcsold ki és távolítsd el

2. Ellenőrizd a weboldaladon használt bővítmények teljesítményét: erre rengetek különböző WordPress bővítményt érhetünk el, melyek információkat nyújtanak az összes, weboldalunk által használt bővítményről.

Gyorsítótárazás

Egy WordPress weboldalon minden egyes oldalbetöltéshez szükséges, hogy a beérkező lekérdezéseket a szerver feldolgozza, az adatbázisból lekérje a szükséges adatokat, majd a szerver a felhasználó böngészőjéhez eljuttatja a végeredményt.

WordPress gyorsítótárazás esetén beállítható hogy bizonyos elemek már készen elérhetőek legyenek a webtárhelyen fájlok formályában vagy memóriában tárolva. Ezáltal nem szükséges minden alkalmommal az alapoktól újra összeállítani a weboldal lapjait, így alapvetően csökkenthető az oldalak létrehozásához szükséges munka mennyisége, ezáltal az oldalbetöltési idő is javítható.

4. Egyéb lehetőségek

 

CDN

Nagy forgalmú weboldal, vagy sok, különböző foldrajzi helyről érkező látogató esetén használhatóak jól a CDN szolgáltatások. Ezek a tartalomelosztó szolgáltatások levesznek bizonyos terheléseket a saját webtárhelyünről, ráadásul az oldalunk betöltési sebességét optimalizálja akkor is ha egy fizikailag távoli gépről érik el azt.

Ez úgy lehetséges hogy a CDN használatával a felhasználók a tartózkodási helyükhöz legközelebb eső szerverről kapják meg a fájlokat. A CDN főként az olyan tartalmak esetén kiváló, amelyek általában statikusak vagy ritkán változnak, például a JavaScript-, CSS-, HTML-fájlok, képek és videók.

DNS

Az oldal betöltési idejét nagyban meg tudja még határozni a DNS-szerver sebessége is. A DNS-szerverek feladata, hogy a begépelt domainek neveket párosítsa a hozzájuk tartozó IP címekkel, így a kérés a megfelelő szerverhez (webtárhelyhez) érkezzen be.

Ha a DNS szerver lassú, akkor a webtárhelyen elérhető adatok kiszolgálása is később kezdődik meg, így fontos, hogy gyors és megbízható DNS-szervert használjunk. A kiválasztás folyamata nagymértékben hasonlít a webtárhely kiválasztásának folyamatára, így figyelembe vehetjük, hogy a látogatók többsége honnan érkezik weboldalunkra.

WordPress weboldald sebességét és optimalizáltságát természetesen nem csak magadnak ellenőrizheted. A feladatot rábízhatod ezzel foglalkozó szakamberekre is, így neked nem szükséges a fentiek felmérése.

vmarci21 profilképe
Veszter Márton @vmarci21 Weblap fejlesztő, az IntoMedia tagja. PHP, JavaScript és MySql témák mellett érdekli a Windows, Linux disztribúciók, Android fejlődése, az IT biztonság, és az újdonságokat felmutató IT termékek.
Hozzászólások -
Vendég profilképe Vendég
{{comment.dateWrite}} Válasz
Válasz {{answer.dateWrite}}