WP_QUERY插件的税务查询部分

时间:2019-12-09 作者:Ricky Stefano

我在用税务查询过滤帖子时遇到问题<我有一个自定义的分类法,叫做“actors”,slug的例子是“davidhasselhoff”。问题是,当我搜索“david hasselhof”时,发现了该帖子,但没有搜索“david”或“hasselhof”。

这是我目前的代码

$args = [
    \'post_type\' => \'movies\',
    \'tax_query\' => [
        [
            \'taxonomy\' => \'actors\',
            \'field\' => \'slug\',
            \'terms\' => $keyword,
        ]
    ]
];

1 个回复
SO网友:Chetan Vaghela

您可以使用以下代码在分类法中搜索。首次使用name__like 在里面get_terms 它将返回包含$关键字的所有术语ID,然后返回ID在中使用的wp_query.

$termIds = get_terms([
    \'name__like\' => $keyword,
    \'fields\' => \'ids\'
]);
$args = [
    \'post_type\' => \'movies\',
    \'tax_query\' => [
        [
            \'taxonomy\' => \'actors\',
            \'field\' => \'id\',
            \'terms\' => $termIds,
        ]
    ]
];

$query_loop = new WP_Query($args);