php - 根据帖子类型的多个 WP_Query args 组合
问题描述
我想meta_query
根据帖子类型有单独的参数。
例如,我想查询t-shirts
有绿色衣领或dress-shirts
有绿色内衬的,现在我只做一个帖子类型检查,我检查t-shirts
并且 dress-shirts
我单独检查元值,这意味着它还将显示不同的组合,例如t-shirts
具有绿色内衬的组合
$query = new WP_Query(array(
'post_type' => array('t-shirts', 'dress-shirts'),
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'collar',
'value' => 'green',
),
array(
'key' => 'inner-lining',
'value' => 'green',
)
),
));
如何将其设置为使用两个不同的 args,一个是 post 类型t-shirts
,一个是单独的 args,如果 post 类型dress-shirts
看起来像:
$query = new WP_Query(
array(
array(
'post_type' => array('t-shirts'),
'meta_query' => array(
array(
'key' => 'heal',
'value' => 'green',
)
),
),
array(
'post_type' => array('dress-shirts'),
'meta_query' => array(
array(
'key' => 'sleeve',
'value' => 'green',
)
),
),
)
);
做两个单独的查询是行不通的,因为它会弄乱分页。
请注意,这是wp.stackexchange上相同问题的副本,因为那里几乎没有活动。
解决方案
WP_Query 不接受这种参数格式。你可以试试下面的代码
$query = new WP_Query(
array(
'post_type' => array( 't-shirts', 'dress-shirts'),
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'heal',
'value' => 'green',
),
array(
'key' => 'sleeve',
'value' => 'green',
)
)
)
);
推荐阅读
- kubernetes - 无法以 kubernetes 类型安装 CRD
- php - 在codeigniter中使用php excel库错误将数据导出到excel
- swift - 使用 Alamofire 在 IOS 上联网
- amazon-web-services - 有亚马逊api吗
- html - 防止表溢出父容器
- python - 用熊猫数据框中的特定时间戳替换 NaT
- python - 通过 YouTube 数据 API [Python] 下载非拥有视频的隐藏式字幕
- python - 检查单词是否存在
- multipartform-data - 如何在 Swagger UI 中的 multipart/form-data 中发送 JSON 数组?
- html - 不同设备的svg背景定位