WP_Cron-Skript aktualisiert nicht alle Posts in Schleife

Ich habe seit einem Monat ein Problem mit diesem Skript, http://pastebin.com/f6LqgqQS . Was das Skript tun soll, ist, alle meine Posts durchzublättern, die gleiche Zahl aus der Facebook-Grafik zu ziehen und das Meta des Beitrags damit zu aktualisieren.

Das Problem, das ich so lange hatte, ist, dass nicht alle meine Beiträge aktualisiert wurden . Es funktionierte gut, als ich 5 Posts hatte, aber sobald ich 60+ erreicht hatte, blieben die älteren Posts unberührt. Sie haben sich zwar nach einer Weile aktualisiert, aber es könnte mehr als 4 Tage dauern, obwohl wp_cron stündlich eingestellt ist (und ich weiß, dass Besucher laufen müssen).

Jetzt dachte ich immer, dass graph api der Täter war und dass facebook meine Anzahl von Anfragen limitierte, aber nach einigen Tests mit dem Skript auf init, scheint es, dass wp_cron das Problem verursacht hat. Ich habe jetzt sogar wp_cron deaktiviert und ich starte es vom Cpanel mit cronjob und bisher hat es super geklappt.

Aber das Problem im Moment ist, dass ich nicht wirklich eine Möglichkeit habe zu bestätigen, dass das Skript tatsächlich korrekt funktioniert und ob wp_cron schließlich der Täter war, da meine Recherchen nichts ergaben . Ich frage mich also, ob jemand, der hier mehr Erfahrung hat, sich das Skript ansehen könnte und herausfinden könnte, ob das Problem tatsächlich wp_cron war.

Solutions Collecting From Web of "WP_Cron-Skript aktualisiert nicht alle Posts in Schleife"

Der wp-cron-process wird als Webanforderung ausgeführt. PHP-processe, die vom Web ausgeführt werden, haben normalerweise eine Laufzeitbeschränkung von etwa 60 Sekunden. processe, die als Befehlszeilenprozess ausgeführt werden (wie von einem realen Cron), haben kein solches Limit.

Das Problem ist also, dass das Skript zu lange braucht, um ausgeführt zu werden und getötet wird. Es gibt keine Lösung dafür, wp-cron ist nicht dazu gedacht, lang laufende benutzerdefinierte Skripte zu erstellen.

Und wenn Sie 60 Mal pro Stunde auf die Graph-API von Facebook treffen, werden sie Sie möglicherweise blockieren. Skaliere es zurück, du solltest diese Information höchstens einmal am Tag erhalten.

Besser noch, schreibe das Skript so, dass es nur die Informationen für diese Beiträge aktualisiert, wenn sie tatsächlich am letzten Tag aufgerufen werden, und benutze nur die zwischengespeicherten Informationen den Rest der Zeit.