将WP_Query导入脚本?

时间:2017-02-25 13:56:57

标签: php jquery wordpress

我为自己写了一个脚本,但我无法执行它。 我的代码中的第一行:

$products_IDs = new WP_Query( array(
    'post_type' => 'product'
));

他说:

PHP Fatal error: Uncaught Error: Class 'WP_Query' not found in 
/var/www/vhosts/gmks/httpdocs/cronjob/after_update.php:10
Stack trace:
#0 /var/www/vhosts/gmks/httpdocs/cronjob/after_update.php(7): delold()
#1 {main}
thrown in /var/www/vhosts/gmks/httpdocs/cronjob/after_update.php on line 10

如何导入WP_Query Class

问候,谢谢! :)

1 个答案:

答案 0 :(得分:1)

我看到你已经创建了一个cronjob,并且你将它指向一个PHP文件,该文件在整个WordPress安装的上下文之外引用了WP_Query。

而是将cronjob指向: http://yourdomain.com/?wp_custom_cron=my_custom_action

然后使用以下代码创建自定义WP插件:

<?php
/**
 * Plugin name: my custom cron job
 */

add_action( "init", "my_custom_cron_job_check" );
function my_custom_cron_job_check() {
    if ( isset( $_GET['action'] ) ) {
        if ( $_GET['action']== 'my_custom_action' ) {
            $products_IDs = new WP_Query( array(
                'post_type' => 'product'
            ));
            /* do what you need to here */

            die();
        }
    }
}
?>