我有3个元字段,日期(日期格式化字符串),位置和顾问。
设置meta_key后,我可以通过日期字段提取帖子和顺序:
// get posts
$posts = get_posts(array(
'post_type' => 'event',
'posts_per_page' => -1,
'meta_key' => 'start_date',
'orderby' => 'meta_value_num',
'order' => 'DESC'
));
但是,我无法使用更复杂的meta_query:
$args = array(
'post_type' => 'uppy_events',
'orderby' => 'meta_value_num',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => $key,
'value' => array($value),
'compare' => '>='
)
),
'numberposts' => -1
);
基本上我想在这些日期之前提取meta start_date大于今天日期和顺序的所有帖子。
作为旁注 - 您可以对说的位置键和仍然按日期键进行meta_query搜索吗?
任何帮助都表示赞赏......这是我第一次尝试通过meta订购,并找到了一些好的帖子,但仍无法绕过它。干杯
答案 0 :(得分:1)
K我想到这一点,因为我的帖子引导我到另一个好榜样。注释掉的meta_query的日期大于今天。另一个是使用不同的密钥。两者都有效!
$today = date("Ymd");
$args = array(
'post_type' => 'uppy_events',
'post_status' => 'publish',
'meta_key' => 'event_date',
'orderby' => 'meta_value_num',
'order' => 'ASC',
'meta_query' => array(
/* array(
'key' => 'event_date',
'value' => $today,
'compare' => '>='
) */
array(
'key' => 'event_location',
'value' => 'vancouver',
'compare' => '='
)
),
'numberposts' => -1
);