我正在做一个BackPress项目,需要安排cron任务。BP的cron\\u uri存储在options中,而不是像在WP core中那样硬编码。我已尝试将选项设置为mysite.com/wp-cron.php (其中wp-cron.php 本质上是WordPress中同一文件的副本,修改后仅包含与我的目的相关的文件。
问题是,当从wp_cron() 函数,它返回以下fsockopen错误:
fsockopen()[function.fsockopen]: 无法连接到中的:80(php\\u network\\u getaddresses:getaddrinfo失败:名称或服务未知)/home/gad/public_html/backpress/class.wp-http.php 在线646
我可以使用fsockopen直接打开cron uri,它不会返回任何错误。据我所知,问题出在HTTP传输API的某个地方,可能在WP_http->request() 功能,其中BackPress检查cron_uri
反对application_uri
选项,以查看请求是否为本地请求(并可能以不同的方式处理不同的请求?)。
奇怪的是,如果我把cron_uri
对于我的主页url,它工作得很好-我可以根据GET请求拦截请求,并包括wp cron。在输出任何内容之前使用php。
我主要困惑的是,为什么wp_remote_post似乎不适用于这个文件,因为它似乎适用于我尝试使用它的大多数其他东西。