Kako da ubrzate svoju WooCommerce online prodavnicu
Kada je u pitanju online prodaja, onda je brzina web sajta jedan od najvažnijih faktora. Što se brže vaša WooCommerce online prodavnica učitava, vaši kupci će biti zadovoljniji i rado će kupovati kod vas.
Sa druge strane, brzina vašeg sajta/online prodavnice je važna i zbog SEO-a. Brži sajt će imati dobar SEO skor, a što bolji SEO skor, to će se sajt bolje rangirati u pretrazi po ključnim rečima u Google-u i drugim search engine-ima.
Ukoliko želite da imate online prodavnicu, a još ne znate kako da je kreirate, pročitajte naš tekst Kako da pomoću WooCommerce plugina napravite svoju online prodavnicu.
Ako već imate WooCommerce online prodavnicu onda nastavite sa čitanjem, jer ćemo vam predstaviti više načina kako da ubrzate svoju WooCommerce online prodavnicu.
Kako da ubrzate WooCommerce online prodavnicu
Odaberite brzu WooCommerce temu
Logično je da ako želite brzu online prodavnicu, pre svega treba da obratite pažnju na odabir WooCommerce teme. Postoji veliki broj WooCommerce tema, pa nije lako odabrati pravu koja će odgovarati i estetskim i tehničkim zahtevima.
Teme možete pronaći u WooCommerce repozitorijumu tema, gde ih možete filtrirati po određenim kategorijama.
Kada je u pitanju brzina teme, tu ćete morati malo sami da istražujete. Ukoliko vam se neka tema dopadne, možete na forumima ili u repozitorijumima potražiti šta korisnici kažu o toj konkretnoj temi. Dodatno, možete potražiti i neke testove poput ovog wp-rocket testa.
Na raspolaganju su vam besplatne ili plaćene teme. Ukoliko ne želite odmah da plaćate, možete prvo isprobati neku temu, a kasnije je nadograditi na premijum verziju.
Iako je svaka od ovih tema kompatibilna sa page builder-ima, naša preporuka je da ih ipak zaobiđete ukoliko je to moguće. Page builderi sadrže dosta koda koji mora da se učita, što u dosta slučajeva zna da uspori sajt.
Umesto toga, možete koristiti WordPress-om ugrađeni builder Gutenberg.
Što se tiče funkcionalnosti teme, tražite onu koja pokriva veći deo onoga što vam je potrebno za vašu online prodavnicu. To će vam pomoći da u startu smanjite potrebu za dodatnim ekstenzijama i pluginima, koji takođe mogu da uspore vaš sajt/online prodavnicu.
Ne preterujte sa pluginima i WooCommerce ekstenzijama
WordPress ima preko 54.000 besplatnih plugina u svom repozitorijumu. Iz tog razloga veći deo korisnika lako posegne za nekim od njih, kada im zatreba neka nova funkcionalnost.
Istina je da plugini pomažu da lako i brzo dodate neku funkcionalnost na vaš web sajt, ali isto tako veliki broj plugina u nekim situacijama može da dovede do usporavanja sajta.
Takođe, neki plugini koji treba da poboljšaju bezbednost vašeg sajta ili unaprede njegove performanse, često ne rade baš dobro u svim hosting okruženjima.
Zato je potrebno da budete oprezni u izboru plugina i birate samo one koji su vam zaista neophodni.
WooCommerce funkcionalnosti možete proširiti pomoću velikog broja besplatnih ili premijum ekstenzija. Oni rade na isti način kao i plugini.
Ipak budite obazrivi kod njihovog izbora, jer previše esktenzija može da uspori sajt, a neke ekstenzije čak mogu biti nekompatibilne jedna sa drugom. Zato se dobro informišite pre nego što posegnete za instalacijom neke ekstenzije.
Kompresujte slike i optimizujte ih
Slike uglavnom čine najveći deo sajta. Ako su u punoj rezoluciji i veličini, one često mogu da budu uzrok sporijeg rada sajta. Zato je potrebno da slike budu kompresovane i optimizovane za prikazivanje na webu.
Primer iznad prikazuje koliko u proseku slike zauzimaju prostora na jednom WordPress sajtu. Srećom postoje tehnike pomoću kojih možete smanjiti veličinu slika na vašem sajtu, bez uticaja na njihov kvalitet.
Evo i nekoliko pravila za optimizaciju slika:
- izaberite odgovarajući format za vaše slike (JPEG, PNG, SVG, WebP)
- kompresujte slike pomoću alata za kompresiju
- koristite responsivne slike za bolji prikaz na različitim uređajima
- koristite lazy-loading za slike koje se trenutno ne vide na ekranu
- prebacite učitavanje slika preko CDN-a
Za kompresiju slika možete koristiti neki od besplatnih online alata poput Optimizila ili Kraken. Oba alata su vrlo jednostavna za korišćenje i automatski odrađuju kompresiju, ali je možete podesiti i sami.
Kada je u pitanju lazy-loading, verzija WordPress 5.4 ili novije podrazumevano koriste lazy-loading funkcionalnost. Ipak, mana ove ugrađene funkcionalnosti je što vam ne dozvoljava da konfigurišete koje slike će se postepeno učitavati.
Alternativno, možete da koristite i neki od plugina. Mi vam preporučujemo da probate Lazy Load by WP Rocket i
A3 Lazy Load
Dodatno možete pročitati i neke od naših ranijih tekstova na temu optimizacije slika:
https://www.plus.rs/blog/sta-je-webp-format/
https://www.plus.rs/blog/webp-na-wordpress/
https://www.plus.rs/blog/kako-resiti-greske-prilikom-uploada-slika-na-wordpress-web-sajt/
Keširajte WooCommerce
Keširanje je proces privremenog čuvanja resursa kod jednog zahteva, tako da se svaki sledeći zahtev izvršava brže. Keširani sadržaj može biti čuvan na serveru ili na korisnikovom uređaju.
To je inače jedan od najlakših načina da ubrzate svoju WooCommerce online prodavnicu, a ujedno i jedan od najvažnijih.
Keširanje ne samo da čini da se vaš web sajt brže učitava, već takođe i omogućava da se rastereti server na kojem se hostuje vaš sajt (web server). Mi na našim serverima nudimo LiteSpeed Cache plugin, što značajno pomaže ubrzanju vašeg sajta.
Očistite vašu WooCommerce bazu podataka
Baza podataka na web sajtu sa online prodavnicom sadrži dva osnovna tipa podataka:
- sadržaj sajta – stranice proizvoda, kategorije, tagove, korisničke podatke, recenzije (ako su omogućene), teme, plugini, itd.
- transakcioni podaci – detalji i porudžbinama, plaćanja, proizvodi na stanju, itd.
Svaki put kada korisnik poseti vašu online prodavnicu, on pošalje zahtev da pogleda sadržaj stranice koju želi da vidi. Taj sadržaj je uglavnom statički i ne menja se često. Sa druge strane, kada korisnik poruči neki proizvod, on tada pravi dinamički zahtev.
Ukoliko ne optimizujete bazu podataka vaše online prodavnice, može proći neko vreme dok se ne obrade ti zahtevi. Ako je server spor, svaki od ovih zahteva će prouzokovati da vaš sajt sporije radi.
Iz tog razloga je neophodno da optimizujete svoju bazu podataka i uklonite nepotrebne podatke.
Evo na koje sve načine možete očistiti svoju WooCommerce bazu podataka:
Obrišite nepotrebne revizije
Ako vaša WooCommerce online prodavnica radi već duže vreme, njene stranice, postovi i proizvodi će biti puni revizija (verzija koje sadrže sve izmene sadržaja koje ste imali u sadržaju sajta). One su inače zgodne kada vam zatreba da sadržaj određene stranice vratite na njeno prethodno stanje. Dakle, u pitanju je korisna funkcionalnost, ali posle određenog vremena revizije počinju da opterećuju bazu i na taj način mogu čak i usporiti rad vašeg sajta.
Najjednostavniji način za brisanje revizija je da instalirate neki od plugina za tu namenu. Možemo da vam preporučimo plugin wp-optimize, pomoću kojeg ćete lako i brzo moći da podesite brisanje.
Druga opcija je da to uradite ručno, bez pomoći plugina. Za to će vam biti potrebno da se ulogujete na svoj cPanel nalog i potražite aplikaciju pod nazivom phpMyAdmin.
Naravno, pre ove ili sličnih akcija, uradite backup svoje baze podataka, ili celog sajta, kako se ne bi desilo da greškom izgubite svoje podatke ili oborite web sajt.
Kada se otvori aplikacija, sa leve strane u stablu pronađite svoju bazu za koju želite da obrišete revizije. Obično imate jednu bazu, pa bi trebalo da znate koja je to baza.
Kada ste označili bazu, u prozoru sa desne strane odaberite karticu SQL. U donjem prozoru će vam se otvoriti ekran kao na slici ispod.
Sada u prazno polje treba da pokrenete SQL query upisivanjem sledećeg koda:
DELETE FROM wp_posts WHERE post_type = "revision";
Ovaj query će ukloniti iz vaše baze sve postove koji imaju post_type=“revision”.
Ograničite broj revizija koje se čuvaju
Nakon brisanja možete ograničiti broj revizija koje se čuvaju, kako ne biste bespotrebno opterećivaju svoju bazu. Na taj način ćete ipak imati revizije, ali limitirane samo na broj koji definišete.
Ovo možete uraditi pomoću sledećeg koda koji ćete dodati u svoj wp-config.php
fajl:
define('WP_POST_REVISIONS', 15);
Samo obratite pažnju da ovaj kod mora biti dodat pre linije gde je definisan ABSPATH
.
Mi smo u ovom kodu ograničili broj revizija na 15, ali vi možete sami podesiti da to bude neki drugi broj. U tom sluaju, umesto broja 15 u kodu iznad, upišite neki drugi broj. Naša preporuka je da to bude svakako neki broj manji od 15.
Onemogućite u potpunosti revizije (ako vam je to baš neophodno)
Ako vam je to baš neophodno, možete u potpunosti onemogućiti (isključiti) revizije na vašem sajtu/online prodavnici. Dovoljno je da u wp-config.php
fajl dodate sledeći kod:
define('WP_POST_REVISIONS', false);
Kao i u prethodnom primeru, ovaj kod mora biti postavljen iznad linije gde je definisan ABSPATH
.
Pre nego što ih u potpunosti onemogućite, predlažemo da ih prvo sve obrišete. Tako će vaša baza podataka ubuduće biti potpuno čista od revizija.
Očistite istekle transiente
Transienti su keširani podaci koji se čuvaju pod određenim nazivom i rokom trajanja. Obično se čuvaju u WordPress bazi unutar wp_options tabele.
Oni su zgodni za čuvanje privremenih podataka kao što su odgovori od udaljenih API-a ili velikih query-a.
WordPress obično dobro upravlja transientima, ali se ponekad desi da oštećen transient keš kreira ogroman broj junk ulaza. Vremenom to može da stvori veli broj redova u vašoj bazi podataka. U tim slučajevima baza podataka postaje preopterećena, što na kraju može da dovede do pada sajta.
Najbrži i najlakši način za brisanje transienata je besplatan plugin Delete Expired Transients.
Očistite tabele u vašoj bazi podataka
Vaša WooCommerce baza podataka čuva sve što je neophodno za rad vaše online prodavnice. S obzirom da se vremenom podaci dodaju, brišu, premeštaju iz jedne tabele u drugu, baza postepeno postaje manje efikasna i pretrpana podacima koji su nepotrebni za rad vaše online prodavnice.
Zato je važno da očistite vašu bazu od tih nepotrebnih podataka. Tabela wp_options je posebno podložna zadržavanju ovih nepotrebnih podataka.
Ipak, optimizacija vaše baze podataka nije baš jednostavan proces, pogotovo ako se odlučite da to radite ručno. Umesto toga bolje je koristiti neki plugin, poput već pomenutog wp-optimize. On će vam pomoći da brzo i jednostavno očistite bazu od nepotrebnih fajlova, a ujedno ga možete podesiti da to radi redovno, u terminima kada to vama odgovara.
Onemogućite Get Refreshed Fragments AJAX request
Kada korisnik pravi neke izmene u svojoj korpi na vašoj online prodavnici, WooCommerce za to koristi Get Refreshed Fragments AJAX zahtev, kako bi dinamički ažurirao sadržaj korpe. Ovo osvežavanje korpe bez potrebe za ponovnim učitavanjem sa korisničke strane izgleda kao odlično rešenje.
Ali u mnogim slučajevima, to usporava vaš web sajt, pogotovo ako je on hostovan na shared hosting serveru. Na kraju krajeva, mnogo sajtovi nikada ni ne koriste ovu funkcionalnost.
Iako je ovaj request veličine samo 1.1 KB, potrebno mu je oko 0.8 sekundi da se izvrši. Ako je vašem sajtu potrebno 3 sekunde da se učita, onda je to nešto preko 25% vremena za učitavanje vašeg sajta. Vreme potrebno za izvršavanje ovog zahteva je još duže na shared hosting serveru.
Kako biste isključili Get Refreshed Fragments AJAX request, najbolje i najjednostavnije rešenje je da koristite plugin pod nazivom Disable Cart Fragments.
Imajte samo u vidu da je nakon što onemogućite ovaj request, preporuka da aktivirate opciju Redirect to the cart page after successful addition, u vašem WooCommerce – Products settings panelu.
Omogućavanje ove opcije će obezbediti da korisnik bude preusmeren na Cart stranicu nakon što doda proizvod u svoju korpu.
Kvalitetan hosting
Na kraju ne zaboravite da ukoliko želite brzu online prodavnicu ili brz web sajt, neophodno je da odaberete kvalitetan hosting, odnosno brz server sa dosta raspoloživih resursa.
Mi vam preporučujemo da za neke od manje zahtevnih WooCommerce prodavnica isprobate neki od naših najnovijih Plus Web Hosting paketa, a za neke zahtevnije obavezno pogledate našu ponudu Premium ili VPS hosting paketa.
Nenad Mihajlović