下面的不起作用,看不出原因。is_focus_product
是真/假 ACF 字段
$ls = get_posts([
'meta_query' => [
[
'key' => 'is_focus_product', 'value' => 1, 'compare' => '='
]
]
]);
// array(0){}
但是,这按预期返回...
var_dump(get_field('is_focus_product', 36));
// bool(true)
我找到了一个解决方案,但 IMO 这是一个胡说八道的 WordPress 缺陷,它不应该局限于某种帖子类型,因为您应该有自由(在这种情况下,无论如何,我认为有数十亿个类似的用例(根据需要进行过滤(毕竟它们都是帖子......
您需要帖子类型,因此...
$ls = get_posts([
'post_type' => 'products',
'meta_query' => [
[
'key' => 'focus_product', 'value' => '1', 'compare' => '='
]
]
]);
这就是我使用查询获取帖子的方式:
$args = array(
'post_type'=> 'products',
'posts_per_page' => 4,
'meta_key' => 'focus_product',
'meta_value' => 1
);