查询具有所有指定标签的帖子

时间:2018-09-20 作者:it_is_written

我试过这个例子:

$query = new WP_Query( array( \'tag__and\' => array( 37, 47 ) ) );
这似乎不起作用。我是否错误地认为类别和标记相对于数据库是相同的,例如在wp\\u terms表中。类别和标记都显示在那里。

因此,我正在查找wp\\U term\\u关系,我看到了我想要的产品的object\\u id,它具有以下示例term\\u taxonomy\\u id:48、45、43、38、37、33、24、23、15、8

因此,在我的过滤器中,我想返回具有所有这些标签的产品。

上面的查询看起来像是一个部分查询(返回具有某些标记的产品),我注意到中也有tag\\uu。

我做错了什么?

我没有真正获得分类法类型搜索,我是否必须像在仪表板中那样显式地声明分类法?我也尝试用“直接SQL”来实现这一点,我尝试了IN操作符,括号中有一个逗号分隔的标记int列表和一个不同的select。。。这很难看,我的意思是它可以工作,但我使用SQL和PHP的组合来进行排序。也没有分页/偏移,所以是的,我正在努力改进。

这是一个很容易回答的问题,但我也想知道这是否是默认情况下内置于WooCommerce中的。这就是这个问题所涉及的内容,但它具体是关于排序的。但我想知道,我看到了woocommerce\\u分页还是woo\\u分页,但不确定它是否只是“开箱即用”,例如筛选搜索、带限制/排序的分页。

谢谢你的帮助,我会继续搜索/尝试。

1 个回复
SO网友:Anil Poudel

要显示来自任一标记的帖子,需要在中使用tag\\uu,而不是tag\\uu和。这将从任一标记id返回帖子。

$tag\\u query=新的WP\\u查询(数组(\'tag\\u in\'=>\'13,27\'));

结束

相关推荐

Change searched term

因此,我正在尝试设置一个搜索表单,其中实际搜索的词与用户输入的词不同。具体来说,我需要删除搜索词中的任何破折号。例如,假设用户输入“7-18”。搜索实际需要查询的是“718”。我在想pre_get_posts 也许是一种方式,但我不知道如何去写它。类似于function alter_query($query) { $unedit = the_search_query(); $edited = str_replace(\"-\",\"\",$unedit); the_sea