Feed pre porovnávač sa po presune webu prestal aktualizovať
Príznaky
Menší e-shop sa presťahoval k inému hostingu. Web fungoval, objednávky prichádzali, nikto si ničoho nevšimol. XML feed pre porovnávač tovaru však zostal v stave z čias presunu: súbor existoval a mal správne položky, len sa už mesiac negeneroval. Nové ceny, zľavy a produkty sa do porovnávača nedostali.
Prostredie
WordPress s WooCommerce, zdieľaný hosting. Feed vytvára plugin, ktorý súbor neaktualizuje sám pri ukladaní produktov. Generovanie spúšťa zvonka volanie jeho REST adresy (/wp-json/<plugin>/v1/feed/generate/...).
Diagnostika
- Dátum poslednej zmeny súboru feedu ukázal deň presunu.
- Ceny vo vzorke produktov sedeli. Išlo len o to, že novšie zmeny chýbali, nie o chybu v dátach. Preto sa nič nehlásilo.
- WP-Cron fungoval a v plánovaných úlohách WordPressu nič nezlyhávalo. Generovanie totiž WordPress neplánuje vôbec.
- V dokumentácii pluginu je, že potrebuje vonkajší cron na svoju REST adresu. Ten bol nastavený v administrácii starého hostingu a s webom sa nepreniesol, pretože nie je v súboroch ani v databáze.
- Ručné zavolanie adresy vrátilo
{"result":"done"}asi za 0,7 s a súbor sa pregeneroval.
Príčina
Plánovaná úloha bola súčasťou hostingu, nie webu. Presun preniesol súbory a databázu, ale na úlohy v plánovači hostingu nikto nepamätal.
Čo hrozí, keď sa to nerieši
Porovnávač ďalej ukazuje staré ceny a tovar, ktorý už nie je na sklade. Zákazník klikne na zľavu, ktorá neplatí, a odíde nahnevaný. Za nesúlad cien môže porovnávač e-shop penalizovať alebo vyradiť. Rovnako potichu po presune prestávajú bežať aj ďalšie plánované úlohy: zálohy, rušenie nezaplatených objednávok, e-maily. Väčšinou sa na to príde až po týždňoch.
Oprava
- Feed sme ručne pregenerovali zavolaním REST adresy.
- V plánovači úloh nového hostingu sme pridali úlohu, ktorá adresu volá dvakrát denne.
- Prázdne súbory starých feedov sme z webu presunuli do zálohy.
Overenie
Po prvom plánovanom behu mal súbor feedu nový dátum a počet položiek zodpovedal publikovaným produktom. Overenie sme zopakovali na druhý deň.
Prevencia a ponaučenie
Pred presunom si spíšte všetky úlohy v plánovači starého hostingu: feedy, zálohy, synchronizácie skladu a importy. Kontrola webu toto nenájde, pretože sa nič nepokazí, len sa prestane aktualizovať.
Súvisiace služby: Havárie a chyby E-shop a pokladňa