【问题标题】:WP Cron job running but not executing the full functionWP Cron 作业正在运行但未执行完整功能
【发布时间】:2019-05-13 16:15:42
【问题描述】:

所以我正在制作一个插件,它使用 youtube V3 api 从我们的 youtube 频道中获取视频并将它们转换为我们网站的帖子。

我正在为此使用 WP Cron。基本上每 12 小时它会检查是否有任何新视频,如果有新视频,它会使用 YouTube V3 API 将它们转换为帖子。

一切似乎都运行良好,除了一件事,即当 WP 调用 cron 作业时,完整的功能不会发生。

它应该会拉入大约 4 个视频。它只拉入一个。

由于某种原因,将视频放入页面内部的 iframe 没有显示出来。

但是当我使用 Cron Manager 插件手动调用 cron 作业时 “Advanced Cron Manager”一切正常。

我可以确认该功能有效。

我还可以确认,当我告诉 wordpress 运行 cron 作业时它可以工作。

只有当 WP 决定自己运行 cron 作业时,该功能才不起作用。它确实运行。它确实做了一些函数应该做的事情,但不是全部。

所以我的问题不是“为什么 youtube api 不起作用”或“为什么我的 cron 作业没有运行”,但是为什么 wp cron 作业在手动调用时会起作用,但在 wp 调用时却不起作用?

【问题讨论】:

  • 尝试在 cron 碰巧转储日志以查看是否一切正常,确保启用 WP_DEBUG 以获取错误和警告

标签: php wordpress api youtube cron


【解决方案1】:

它不仅是 WP,它可以发生在任何框架中。这更像是一个笼统的问题。我建议你这样做:

  1. 检查您的错误日志。也许你有内存限制问题。如果是这种情况,请确保将 memory_limit 设置为 256 或 512M 之类的高值。

  2. 将各种自定义日志消息放入您的函数中,并将其记录到单独的日志文件中,以便您至少知道它在哪里运行和在哪里停止。

  3. 无论您对 youtube 等外部 API 提出什么请求,都将其放入 try catch 块中以捕获任何异常并记录它们。

希望你能以这种方式调试它,祝你好运!

【讨论】:

    猜你喜欢
    • 2023-02-14
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-17
    相关资源
    最近更新 更多