我有一个让我感到困惑的 WordPress tax_query。
我有与产品相关的帖子。每个产品都属于与性别相关的类别。
所以有些帖子是“男装”,有些是“女装”。但有些产品同时适用于“男士”和“女士”。例如背包。然后一些产品(如电器)既不在“男装”也不在“女装”中。
那么如何使用 WP_Query 查询呢?您可以在下面看到我的尝试,但是当帖子同时出现在“男士”和“女士”中时,它不起作用。有什么想法吗?
// Build Gender Tax-Query, based on known user gender
if($user_gender == 'male') {
// User is a male
$gender_query = array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => 'womens',
'operator' => 'NOT IN'
);
} elseif($user_gender == 'female') {
// User is a female
$gender_query = array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => 'mens',
'operator' => 'NOT IN'
);
} else {
// User is unknown gender
$gender_query = array();
}
// Get posts
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 2,
'orderby' => 'rand',
'tax_query' => array(
'relation' => 'AND',
$gender_query
),
);
$posts = get_posts($args);
谢谢您的帮助!