【发布时间】:2015-03-09 12:56:04
【问题描述】:
我试图想出一种方法来查询特定作者的 CPT,以及 meta_key 是否具有特定值。
例如,我的 CPT 附有一个作者 ID 以及一个“收件人”自定义字段。我需要的是该作者的所有此类帖子以及“收件人”=该作者的所有此类帖子。
(希望我已经解释得足够好!)
我通常对 SQL 很满意,但只是有一个随机的大脑放屁时刻,无法弄清楚这一点。就像我说的,非常感谢任何帮助!
== 解决了==
感谢@3pepe3 建议 WP_Query 的 meta_query 参数。稍微修改了我的 CPT 逻辑,现在有了一个漂亮的工作系统。
解决方案是为每个包含原始发件人用户 ID 的帖子添加一个新的元字段,然后运行两个元查询来检索当前用户 ID 与发件人或收件人字段匹配的帖子,如下所示:
$args = array(
'post_type' => 'activity',
'post_status' => 'publish',
'orderby' => 'date',
'order' => 'DESC',
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'sender',
'value' => $user_id,
'type' => 'BINARY',
'compare' => '='
),
array(
'key' => 'recipient',
'value' => $user_id,
'type' => 'BINARY',
'compare' => '='
)
)
);
$query = new WP_Query( $args );
【问题讨论】: