Php WordPress Real Cron作业返回空站点选项
我开发了一个WordPress站点,该站点禁用了标准的wp_cron,并实现了一个真正的cron作业。cron的设置如下所示:Php WordPress Real Cron作业返回空站点选项,php,wordpress,cron,Php,Wordpress,Cron,我开发了一个WordPress站点,该站点禁用了标准的wp_cron,并实现了一个真正的cron作业。cron的设置如下所示: “c:\Program files\php\php.exe”E:\SiteRootFolder\wpcron.php 这似乎很有效。但是,当cron启动并运行函数文件中的代码时,WordPress函数,如home\u url,wp\u get\u attachment\u image\u src,get\u permalink,get\u stylesheet\u di
“c:\Program files\php\php.exe”E:\SiteRootFolder\wpcron.php
这似乎很有效。但是,当cron启动并运行函数文件中的代码时,WordPress函数,如home\u url
,wp\u get\u attachment\u image\u src
,get\u permalink
,get\u stylesheet\u directory\u uri
和其他函数要么不工作(返回空值),要么返回奇数值(get\u stylesheet\u directory\u uri
返回http:///wp-content/themes/theme-folder-name
而不是正确地包含url)。然而,其他功能,如$wpdb->get_results($querystr)
和wp_get_post_terms
似乎工作正常
当我在WordPress管理员中运行函数时(我添加了一个按钮来启动函数,以便管理员可以根据需要启动作业),一切工作都很完美。但当它从真正的cron作业运行时,所有这些重要功能都会中断
这是什么原因?当真正的cron运行时,是否有对丢失文件的引用?您必须从web服务器上下文调用
wp cron.php
,而不是直接使用php可执行文件。下面是一个页面,介绍的是为CentOS编写的一些详细信息,但您可以使用Windows获得相同的结果
简言之,假设您的域是example.com
,并且希望每5分钟运行一次WP-cron,那么您的cron作业应该类似于以下内容。这将调用wp cron.php
,并定义所有适当的$\u服务器
变量,以提供许多WordPress函数的预期值
*/5****curl.exe--静默http://example.com/wp-cron.php?doing_wp_cron
这是意料之中的。您是从命令行运行它的,因此通常通过Web服务器运行时设置的所有$\u服务器参数都不可用,wp会丢失大部分上下文。@MarcB,您对如何解决此问题有什么建议吗?工作非常好!非常感谢。如果任何人需要有关上述cron代码的更多信息,请访问