ACF 复选框元查询

ACF checkbox meta query

以下无效,不明白为什么。 is_focus_product 是一个 True/False ACF 字段

$ls = get_posts([
    'meta_query' => [
        [
            'key' => 'is_focus_product', 'value' => 1, 'compare' => '='
        ]
    ]
]);
// array(0){}

然而这returns如预期...

var_dump(get_field('is_focus_product', 36));
// bool(true)

我找到了一个解决方案,但我认为这是一个废话 WordPress 缺陷,它不应该局限于某种 post 类型,因为你应该有自由(无论如何,在这种情况下,我认为有数十亿类似的用例)以根据需要进行过滤(毕竟它们都是 posts...)。

您需要 post 类型,所以...

$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
);