我有一个查询来获取自定义帖子类型" date"当前用户的帖子。查询有一些meta_query条件可以正常工作,但当前用户过滤器根本不起作用...
我不知道它是否重要但这个查询是作为ajax函数的一部分运行的。我已经确认当前用户已正确定义
这里是查询:
$curr_user = wp_get_current_user();
$date = array('2015-11-20', '2015-11-30')
$query_date_arg = array(
'post_type' => 'date',
'post_author' => $curr_user->ID,
'posts_per_page' => -1,
'meta_query' => array(
'relation' => 'OR',
array(//date singole comprese nel periodo $date
'relation' => 'AND',
array(
'key' => 'wpcf-date',
'value' => $date,
'type' => 'DATE',
'compare' => 'BETWEEN',
),
array(
'key' => 'wpcf-date-end',
'compare' => 'NOT EXISTS',
),
),
array( //periodi compresi nel periodo $date
'relation' => 'AND',
array(
'key' => 'wpcf-date',
'value' => $date,
'type' => 'DATE',
'compare' => 'BETWEEN',
),
array(
'key' => 'wpcf-date-end',
'value' => $date,
'type' => 'DATE',
'compare' => 'BETWEEN',
),
),
),
'fields' => 'ids',
);
$dates_to_be_deleted = get_posts( $query_date_arg );
此查询应返回当前用户的帖子ID数组,这些帖子ID与meta_query条件匹配 问题是我获取了所有用户的帖子ID,而不仅仅是当前用户的帖子。
这是一个wordpress 4.3.1错误,或者,我认为......,我在查询中有一些错误?
我会感激任何帮助!
感谢
丹尼尔
答案 0 :(得分:0)
请更改参数名称“post_author”,仅使用“author”。
'author' => get_current_user_id(),
谢谢!!