Zpožděná publikace (Nefunkční CRON) na WordPress

Vyřešeno718 zhlédnutíRedakční systémycron wordpress
0

Dobrý den,

bojuji s problémem špatně fungujícího CRONu na webu. Jedná se o web novin, takže články vycházející na čas jsou základ. Bohužel často šéfredaktor hlásí, že ráno nejsou články co nastavil publikované a je u nich chyba opožděné publikace.

Lokální diagnostika problémy s virtuálním CRONem nehlásí, no i tak jsem po postu Separatisty (separatista.cz) vypnul CRON virtuální a začal používat /wp-cron.php volaný z WEDOS administrace. Bohužel i tak se s problémem setkáváme. Nějaké nápady na řešení?

Web běží na nejnovějším WP, placené šabloně a WEDOS NoLimit hostingu s HTTPS.

Role: Zákazník+ Web: https://c-net.cz Vizitka: Nepomohla Vám odpověď, nebo potřebujete i tak poradit/pomoct? Jsem student na VUT a občas podnikám v IT. Ozvěte se mi na kontakt@c-net.cz a vždy se nějak domluvíme. Jinak se rád věnuji sítím, zvukařině nebo čemukoliv spojenému s technikou. :)
Otázka je uzamčena pro nové odpovědi.
Vybral nejlepší odpověď
0

Zdravím,

WP Cron je spíše taková simulace CRONu. On se neaktivuje, dokud někdo na stránku nepřijde. Takže pokud by měl v 13:00 něco udělat a návštěvník (třeba i bot) aktivuje WP skripty až v 15:00, tak se provede teprve tehdy.

U článků to nevadí, protože je WP publikuje se zpětným datem a časem. Což fakticky nikomu nevadí. Protože ten kdo tam přijde v 15:00 je zároveň první kdo článek uvidí 🙂

Aby se mohl WP Cron aktivovat musí být tedy aktivován WordPress, což může být problém v případě některých cachovacích pluginů. Dělá to třeba WP Fastest Cache – ten navyrábí v podstatě html stránky a ty servíruje přes .htaccess. Podobně by mohla fungovat i Wedos Proxy ta nepustí návštěvníka na samotný WordPress, na druhou stranu by přes ajax měla aktivovat skripty. V každém případě refresh administrace by jej měl aktivovat.

Ten WP Cron se také řídí vlastním časem a časem serveru. Chce to zjistit jaký ukazuje čas. Může tam mít třeba o hodinu méně, takže se ten článek publikuje až za hodinu.

V každém případě bych zkusil ještě kouknout na Stav Webu (Nástroje -> Stav Webu). Když je rozbitý WP Cron tak to tam ukazuje. Případně rozšíření Health Check plugin.

Role: Zákazník+ Web: https://404m.com Vizitka: Neprogramuj dnes, co nemůžeš debugovat zítra.
Vybral nejlepší odpověď
0
26.92K - WEDOS Internet, a.s. 0 Comments

Dobrý den,

můžete si CRON otestovat pomocí jednoduchého skriptu, který vám třeba odešle e-mail? Tak ověříte, že se CRON ze strany webhostingu spouští v pořádku.

Jak moc opožděná je ta publikace? U své služby CRON uvádíme, že přesnost může být v řádu několika minut, podle aktuálního vytížení. Je možné, že by např. CRON ve 12:01 nepublikoval články, které měly být publikované přesně ve 12:00?

Role: Podpora Web: https://wedos.cz Vizitka: Pokusím se vám poradit s CMS.
Odpověděl na otázku
0

To nevím, je to stále interní CRON wordpressu a ten jsem nepsal. Aktuálně jsem vytvořil testovací stránku a dal ji publikaci na 13:50. Ta se na webu neobjevila. Odeslání mailu na čas ve WP asi neudělám, jak jsem řekl, cron není můj script, takže ověření se provádí špatně.

Články, u kterých chyba nastane se nevydají ani hodinu po uvedeném zpoždění.

Takto pak vypadá chyba:

(čas na ní je screen dvě minuty po plánu, zkoušel jsem to i po dopsání příspěvku – asi 5 minut po plánu).

Přiznám se, že přesně nevím, jak to WordPress plánuje s CRONem a jak pracuje, no snažím se najít problém. Zkoušel jsem CRON link i volat ručně, načte se bilá stránka (to je asi OK). No nic se nestane.

Role: Zákazník+ Web: https://c-net.cz Vizitka: Nepomohla Vám odpověď, nebo potřebujete i tak poradit/pomoct? Jsem student na VUT a občas podnikám v IT. Ozvěte se mi na kontakt@c-net.cz a vždy se nějak domluvíme. Jinak se rád věnuji sítím, zvukařině nebo čemukoliv spojenému s technikou. :)
publikoval nový komentář

Zkusil jsem i udělat stránku s časem 14:01 a ručně spouštět CRON tesně před, na čas a těsně pod. Bohužel ani to nepomohlo, nemyslím si, že je problém v CRONu, ale spíš někde ve WP.

Dobrý den,

nemůže být na vině cachovací plugin, cachování šablony, proxy cache na webhostingu, případně ještě ruční cache přímo v htaccesu či špatně nastavená cache v prohlížeči.

Zkuste zapnout CRON a v F12 zvolte záložku síť , tam zvolte zakázat cache (či zakázat mezipaměť) a při otevřené konzoli F12 nasimulujte prosím celý pokus znova.

0

Dobrý den,

napadá mě jedno řešení (nevyzkoušeno, myšlenka vychází z toho, co psal IS97596).

Pokud ke správnému fungování WP Cronu stačí pouze to, aby se WP „aktivoval“, tak bych to vyřešil vytvořením Cronu v administraci Wedosu, nastavil nejnižší hodnotu (ta je u neplacené varianty 5min) a prostě si volal vlastní stránky..

Tzn vytvořit Cron, interval 5min, čas od 0 do 23, všechny dny a volat si úvodní stránku webu..

S WP Cronem nemám žádné zkušenosti, takže u sebe to neotestuji, ale myslím si, že za zkoušku to stojí..

Role: Zákazník+ Web: https://www.techniciostrava.cz Vizitka: Jsi-li programátor, prohraješ s počítačem, výrobcem HW a uživatelem. Jsi-li tester, prohraješ se všemi.. Programováním i testováním se to snažím vyvrátit :-)
Odpověděl na otázku
0

Zkusím, no mám podezření, že CRON nefunguje jak by měl. Povypínám cache a zkusím web volat takto se zaplým WP CRONem.

Role: Zákazník+ Web: https://c-net.cz Vizitka: Nepomohla Vám odpověď, nebo potřebujete i tak poradit/pomoct? Jsem student na VUT a občas podnikám v IT. Ozvěte se mi na kontakt@c-net.cz a vždy se nějak domluvíme. Jinak se rád věnuji sítím, zvukařině nebo čemukoliv spojenému s technikou. :)
Odpověděl na otázku

Categories