Preskoči na vsebino

Nastavitve piškotkov

Za vsako vrsto izberite, katere piškotke dovolite. Svojo izbiro lahko kadar koli spremenite prek povezave Nastavitve piškotkov na dnu vsake strani. Izjava o zasebnosti

Nujni

Vedno vklopljeno

Potrebni so za prijavo, shranjevanje košarice in pomnjenje Vaših izbir. Vedno so vklopljeni.

Kateri piškotki?
  • weboke_sessie, weboke_klant, weboke_remember: Vaša seja in ohranjanje prijave
  • weboke_basket: Vaša košarica
  • wkBtwIncl: prikaz cen z DDV ali brez DDV
  • wok_cookies: Vaša izbira glede piškotkov, 12 mesecev

Meri, kateri oglas vodi do obiska ali naročila, da ne plačujemo za oglase, ki ne prinesejo ničesar.

Kateri piškotki?
  • Google Ads prek Google Tag Manager (_gcl_au, _gcl_aw), do 90 dni
  • OpenAI Ads, oglasi v ChatGPT
  • wok_aff: prek katerega partnerja ste prišli k nam (partnerski program), 60 dni

4,6

Država in jezik

Vsaka država ima svojo spletno stran, s cenami in DDV za to državo.

Prikaži

Cron, Action Scheduler in testno okolje (staging)

Modul 7: Vidnost in gostovanje · Čas branja: 10 minut

Učni cilj: Po tej lekciji boste znali razložiti, kako WooCommerce izvaja opravila v ozadju, preveriti načrtovana dejanja in jih ob težavah popraviti ter testno okolje (staging) za spletno trgovino nastaviti tako, da pravi kupci, plačila ali naročila niso ogroženi.

Ključni pojmi: WP-Cron, pravi cron, DISABLE_WP_CRON, Action Scheduler, načrtovana dejanja, čakanje, dokončano, spodletelo, čiščenje, testno okolje za spletno trgovino, testni način ponudnika plačil, izklopljena e-pošta, webhooki, povezave, baze podatkov ne prepišete čez produkcijo

Kaj se dogaja, ko nihče ne gleda

Spletna trgovina opravi veliko dela, ki ni neposredno povezano s klikom obiskovalca:

  • preklic neplačanih naročil, ko poteče čas za zadržanje zaloge (lekcija 3.4);
  • pošiljanje e-sporočil po spremembi stanja in webhookov povezavam;
  • posodabljanje poročil in statistike v skrbništvu;
  • čiščenje poteklih sej in začasnih podatkov;
  • izvajanje rokov hrambe iz Računi in zasebnost (lekcija 2.3);
  • pri naročninah ali povezavah z računovodstvom: obračunavanje plačil in posredovanje podatkov.

Za to WordPress uporablja WP-Cron, WooCommerce pa poleg tega še Action Scheduler. Če ta ne delujeta pravilno, tega ne opazite takoj. Opazite šele, ko neplačana naročila še naprej zadržujejo zalogo, poročila ostanejo prazna ali povezava zaostaja več dni.

WP-Cron in pravi cron

Kako deluje WP-Cron in zakaj je pravi cronjob boljši, je opisano v tečaju o WordPressu, lekcija 6.3: WP-Cron se izvaja ob obiskih, ne po uri, kar je pri malo obiskovalcih nezanesljivo, pri veliko obiskovalcih pa obremenjujoče. Rešitev: DISABLE_WP_CRON v wp-config.php in cronjob v Vaši nadzorni plošči gostovanja, ki wp-cron.php zažene vsakih nekaj minut.

Za spletno trgovino to ni optimizacija, temveč nujnost:

  • Ponoči, ko je obiskov malo, morajo biti neplačana naročila vseeno pravočasno preklicana.
  • Med obsežno akcijo pa nočete, da bi se zahtevno opravilo v ozadju izvajalo na račun zahteve kupca, ki želi zaključiti nakup.

Pri WebOké tako opravilo ustvarite v DirectAdminu pod Cronjob opravila (DA 15.1, KB 48), s potjo do PHP /usr/local/bin/php; pri drugih ponudnikih gostovanja to deluje podobno v njihovem zaslonu za cron. Za spletno trgovino izberite interval od ene do pet minut, raje kot deset. Opravilo, ki se izvaja vsako minuto in nima kaj početi, skoraj nič ne stane.

Action Scheduler: čakalna vrsta WooCommerca

Action Scheduler je čakalna vrsta za opravila v ozadju, ki je priložena WooCommercu in jo uporabljajo tudi številni drugi vtičniki (naročnine, povezave z računovodstvom, e-poštni marketing). Vsako opravilo je dejanje s časom izvedbe in stanjem. Čakalna vrsta se obdeluje prek opravila WP-Cron (action_scheduler_run_queue), zato tudi tu velja: brez zanesljivega crona čakalna vrsta zaostaja.

Vse vidite pod WooCommerce > Stanje > Načrtovana dejanja (Scheduled Actions). Na voljo so zavihki po stanju:

StanjePomenKaj storite
Čakanje (Pending)Se mora še izvestiČe jih je na stotine s časom v preteklosti, čakalna vrsta zaostaja: preverite svoj cron
V teku (In-progress)Se izvaja zdajČe dejanje dolgo obvisi, poglejte v dnevnik ob njem
Dokončano (Complete)OpravljenoNič; samodejno se počistijo
Spodletelo (Failed)Je vrnilo napakoPreberite sporočilo o napaki v stolpcu Dnevnik; pogosto gre za vtičnik ali povezavo, ki ni dosegljiva
Preklicano (Canceled)Namerno ni bilo izvedenoObičajno nič

Glede na izvorno kodo Action Scheduler privzeto počisti dokončana in preklicana dejanja po enem mesecu, spodletela pa po treh mesecih. Če tabela kljub temu hitro raste, se verjetno izvaja veliko dejanj, ki vedno znova spodletijo ali se ustvarjajo; namesto da tabelo samo izpraznite, ugotovite, kateri vtičnik jih ustvarja (pomagata stolpec Skupina in ime hooka).

Primer iz prakse pri Theehuis Example: povezava z računovodskim programom je po spremembi gesla vsako naročilo uvrstila v čakalno vrsto kot spodletelo dejanje. Po enem tednu je bilo 400 spodletelih dejanj, manjkalo pa je 60 računov (lekcija 5.6). Ko je bila povezava popravljena, je skrbnik lahko dejanja posamično znova zagnal z Zaženi zdaj (Run).

Testno okolje za spletno trgovino

Kaj je testno okolje (staging), kako ga ustvarite in kako ga zaščitite (geslo, noindex), je opisano v tečaju o WordPressu, lekcija 8.3. Pri WebOké to lahko storite s kloniranjem v Installatronu (DA 13.7, KB 232) in z mapo, zaščiteno z geslom (DA 15.9); drugi ponudniki gostovanja imajo podobna orodja. Pri spletni trgovini se temu pridruži še nekaj stvari, saj kopija trgovine vsebuje prave podatke o kupcih in lahko izvaja prava dejanja.

Takoj po kloniranju, preden storite karkoli drugega:

  1. Ponudnik plačil v testnem načinu, s testnimi ključi. Testno okolje z ključi za živo delovanje lahko prejema prava plačila ali izvaja vračila.
  2. E-pošta izklopljena ali preusmerjena. Sicer kopija pošilja potrditve, opomnike in sporočila o zapuščenih košaricah pravim kupcem. Uporabite vtičnik, ki zadrži vso pošto ali jo pošlje na en testni naslov.
  3. Povezave in webhooki izklopljeni. Računovodstvo, usklajevanje zaloge, nalepke za pošiljke, e-poštni marketing: sicer testno okolje knjiži račune ali pošilja pakete. Preverite tudi WooCommerce > Nastavitve > Napredno > Webhooki in ključe API.
  4. Pregled načrtovanih dejanj. Čakalna vrsta je bila kopirana skupaj s trgovino. Čakajoča dejanja (opomnik po e-pošti, plačilo naročnine) se sicer na testnem okolju izvedejo še enkrat.
  5. Omejitev osebnih podatkov. Če za testiranje ne potrebujete pravih podatkov o kupcih, jih na testnem okolju izbrišite ali anonimizirajte. Testno okolje prav tako sodi pod GDPR in je pogosto slabše zaščiteno (lekcija 5.5).

In najpomembnejše pravilo pri vračanju: baze podatkov testnega okolja nikoli ne prepišite čez delujočo trgovino. Med kloniranjem in vračanjem so nastala nova naročila, kupci, spremembe zaloge in plačila; te bi izgubili. Spremembe znova izvedite na produkciji (zdaj veste, da delujejo) ali uskladite samo datoteke. Če je baza podatkov vseeno nujna, to storite le, ko je trgovina v načinu vzdrževanja, takoj po sveži varnostni kopiji in z orodjem, ki naročila in kupce izpusti.

Testiranje posodobitve na testnem okolju

Običajen postopek za večjo posodobitev WooCommerca ali plačilnega vtičnika:

  1. Ustvarite svežo kopijo za testno okolje (klon produkcije) in uredite zgornjih pet točk.
  2. Posodobite na testnem okolju in izvedite posodobitev baze podatkov, če jo WooCommerce zahteva.
  3. Opravite testno naročilo v testnem načinu: plačilo, neuspešno plačilo, vračilo (lekcija 4.5).
  4. Pod Načrtovana dejanja in v dnevniku napak preverite, ali so se pojavile nove napake.
  5. Nato posodobite produkcijo ob mirnem času, s varnostno kopijo tik pred tem (lekcija 6.2).

Povzetek

  • WooCommerce opravi veliko dela v ozadju; to poteka prek WP-Cron in Action Schedulerja.
  • Za spletno trgovino vedno uporabite pravi cronjob (vsako minuto do vsakih pet minut) namesto WP-Cron ob obiskih.
  • Preverjajte WooCommerce > Stanje > Načrtovana dejanja: veliko zapoznelih čakajočih ali spodletelih dejanj pomeni, da cron ali povezava ne deluje.
  • Na testnem okolju: ponudnik plačil v testnem načinu, e-pošta in povezave izklopljene, pregled načrtovanih dejanj, omejitev osebnih podatkov.
  • Baze podatkov testnega okolja nikoli ne prepišite čez delujočo trgovino; spremembe znova izvedite na produkciji.

Kviz

1. Zakaj je pravi cronjob za spletno trgovino pomembnejši kot za blog?



2. Pod Načrtovana dejanja je 2000 čakajočih dejanj s časom od včeraj. Kaj je najverjetnejši vzrok?



3. Kaj na novem testnem okolju spletne trgovine uredite najprej?



4. V ponedeljek ste ustvarili testno okolje in v petek želite spremembe objaviti v živo. Zakaj baze podatkov ne vrnete kar tako?



Naloga

Naloga A7.3: Ali je Vaše testno okolje (staging) zaščiteno? To je enako preverjanje kot naloga A8.3 tečaja o WordPressu. Najprej potrebujete dokazilo o lastništvu domene (zapis TXT _weboke-cursus.<domein> ali datoteko /.well-known/weboke-cursus-<code>.txt s kodo, ki jo prejmete). Nato vnesite naslov svoje trgovine in naslov svojega testnega okolja (gostitelj pod isto domeno). Program brez prijavnih podatkov zahteva domačo stran testnega okolja in domačo stran produkcije. Zeleno, če testno okolje zahteva geslo (401) ali če ima noindex in uporablja svoj naslov (vstopna točka REST kaže na gostitelja testnega okolja), produkcija pa nima noindex. Oranžno, če ima testno okolje noindex, a nima gesla, ali nima veljavnega certifikata. Rdeče, če je testno okolje odprto in ga je mogoče indeksirati, če testno okolje še kaže na naslov produkcije ali če ima produkcija po pomoti noindex.

Vprašanja zase (se ne preverjajo): ali je ponudnik plačil na Vašem testnem okolju v testnem načinu? Ali je e-pošta izklopljena ali preusmerjena? Ali so povezave in webhooki izklopljeni? Koliko čakajočih in spodletelih dejanj je trenutno pod Načrtovana dejanja na produkciji?

Naloga A7.3: Ali je Vaše testno okolje (staging) zaščiteno?

Ta preverba zahteva poti, ki jih smete dati preveriti samo za lastno spletno trgovino. Najprej kliknite "Prikaži mojo kodo" in to kodo nastavite kot zapis TXT na _weboke-cursus.<Vaša domena> ali kot datoteko na Vašem spletnem mestu (glejte navodila pri kodi).



Tega, kar vnesete, in tega, kar najdemo, ne shranjujemo. Vaš brskalnik si zapomni Vaše odgovore in to, ali ste nalogo opravili. Če ste prijavljeni, v Moji tečaji shranimo samo podatek, da ste nalogo (skoraj) pravilno opravili; tudi to lahko tam izbrišete.

Za nadaljnje branje

Ti članki opisujejo korake v nadzornih ploščah WebOké; v drugih nadzornih ploščah delujejo podobno.

Trenutek…

Nastavite svoje domene

Za vsako domeno uredite imenske strežnike, povezavo z gostovanjem in kdo bo imetnik.

Nalaganje Vaših domen…