我有一个为自定义站点制作的小插件,其中一个新词将通过wp cron挑选。应在get\\u posts中选择并返回最旧(最低ID#)的自定义帖子类型。但是,它总是返回并选择该自定义类型的最新(最大的帖子ID)。
奇怪的是,如果我在XYZ PHP代码(允许您在仪表板中使用PHP生成短代码的插件)中尝试相同的查询,就会返回正确的结果。
以下是我在众多问题中尝试过的问题。我还尝试了“ID”、“date”、“date”以及“asc”的所有顺序,但都不起作用。在通过wp Crontrol尝试插件的新版本时,我还手动删除了以前的wp\\U schedule\\u事件。
//Schedule an action if it\'s not already scheduled
if ( ! wp_next_scheduled( \'wordss_cron_hook\' ) ) {
wp_schedule_event( strtotime(\'2019-10-31 03:58:00\'), \'daily\', \'wordss_cron_hook\' );
}
///Hook into that action that\'ll fire daily
add_action( \'wordss_cron_hook\', \'wordss_cron_function\' );
//create your function, that runs on cron
function wordss_cron_function() {
//your function...
$args = array(\'post_type\' => \'word\',
\'post_status\' => \'publish\',
\'category__not_in\'=>array(3,4),
\'meta_key\' => \'word_is_active\',
\'meta_value\' => true,
\'suppress_filters\' => true,
\'orderby\' => \'id\',
\'order \'=>\'asc\',
\'posts_per_page\' => 1
);
$posts = get_posts($args);
if (count($posts) > 0) {
$postid=$posts[0]->ID;
$posttitle = $posts[0]->post_title;
$imageid=get_post_meta($postid,\'word_image\',true);
$postimage=$imageid[\'guid\'];
$obj[\'secondpost\'] = (object) array(\'posttitle\' => $posttitle,\'postid\'=>$postid,\'postimage\'=>$postimage);
wp_set_post_categories($postid,array(3));
update_option(\'saved_day_post\', $obj);
wpfc_clear_all_cache(true);
}
}