如果wp_meta_Query值中存在两个第一个数字

时间:2021-01-28 作者:user3653409

“我想显示自定义帖子类型”;“公司”;按zipcode过滤。

在我的CPT中,我有一个名为“companies\\u zip\\u code”的ACF字段,其值如下所示:

29200
29860
35000
22350
...

I want to display only companies where their companies_zip_code begins with 29

所以我写了这个WP\\u查询:

$args = array(
    \'post_type\' => \'companies\',
    \'post_status\' => \'publish\',
    \'posts_per_page\' => -1,
    \'meta_query\' => array(
        array(
            \'key\' => \'company_address_zip_code\',
            \'value\' => 29,
            \'compare\' => \'LIKE\',
        )
     )
);

$custom_query = new WP_Query($args);
因此,我只想显示具有以下Zipcode的公司:29200,29500,29860 etc..但它不起作用

谢谢你的帮助!

2 个回复
最合适的回答,由SO网友:Q Studio 整理而成

您可以尝试将REGEX compare选项用于meta\\u查询,如下所示:

 \'meta_query\' => array(
        array(
            \'key\'       => \'company_address_zip_code\',
            \'value\'     => \'^29@\',
            \'compare\'   => \'REGEXP\',
        )
    )

SO网友:Antti Tolvanen

在里面meta_query 更改:

    \'value\' => 29,
    \'compare\' => \'LIKE\',

    \'value\' => array(29000, 29999),
    \'compare\' => \'BETWEEN\',
在中更改两个数字value 根据您想要的邮政编码范围。

可在此网站上找到更多信息thread.

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post