我有两种自定义分类法:
型号产品Type
可以是以下内容:
博客案例研究网络研讨会Subject
可以是:
我在WordPress后端有两个下拉菜单,用户可以从中选择type
和subject
他们想从resources
(我的自定义帖子类型)。
例如,以下帖子存在于resources
:
- Post 1: 标记为
type
博客和subject
室外 - Post 2: 标记为
type
博客和subject
室内 - Post 3: 标记为
subject
室内
type
或subject
. 我的意思是,不是两个都需要,只能选择一个。但是,如果用户选择了type
和subject
, 我希望它显示带有两个标签的帖子。Current approach:
$args = array(
\'post_type\' => \'resources\',
\'post_status\' => \'publish\',
\'posts_per_page\' => 8,
\'tax_query\' => array(
\'relation\' => \'AND\',
array(
\'taxonomy\' => \'type\',
\'field\' => \'slug\',
\'terms\' => $resource_type,
),
array(
\'taxonomy\' => \'subject\',
\'field\' => \'slug\',
\'terms\' => $resource_subject,
),
),
\'tax_query\' => array(
\'relation\' => \'OR\',
array(
\'taxonomy\' => \'type\',
\'field\' => \'slug\',
\'terms\' => $resource_type,
),
array(
\'taxonomy\' => \'subject\',
\'field\' => \'slug\',
\'terms\' => $resource_subject,
),
)
);
$resource_type
: 是保存下拉列表值的变量type
.$resource_subject
: 是保存的下拉值的变量subject
.
Current results:
- 过滤时
subject
独自一人——这很有效。当按筛选时type
独自一人——这很有效。
当同时使用两者进行过滤时,它不起作用。一、 e.我已过滤type
博客和subject
室内,它向我展示subject
户外立柱。
或者,在查询两者时,以下选项可以工作,但在仅选择一个选项时不起作用:
$args = array(
\'post_type\' => \'resources\',
\'post_status\' => \'publish\',
\'posts_per_page\' => $card_count,
\'tax_query\' => array(
\'relation\' => \'AND\',
array(
\'taxonomy\' => \'type\',
\'field\' => \'slug\',
\'terms\' => $resource_type,
),
array(
\'taxonomy\' => \'subject\',
\'field\' => \'slug\',
\'terms\' => $resource_subject,
),
)
);