【发布时间】:2021-10-27 18:25:23
【问题描述】:
我正在尝试使用meta_query 过滤器查询帖子,但问题是我在自定义字段中存储了多个用户 ID,我不知道如何过滤帖子。
所以自定义字段是多选框,它保存了选定用户的ID。
现在在前端我想通过检查当前登录的用户是否在选定用户列表中来查询帖子。
查询如下所示:
$args = array(
'post_type' => 'music',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => 'title',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => 'manager',
'value' => get_current_user_id(),
'compare' => 'LIKE',
),
)
);
$loop = new WP_Query( $args );
如果我在该字段中有单个用户 ID,这将起作用。但是manager 的值是一个数组。
编辑:添加更多信息,字段的值保存为序列化数组,因此数据库中的值为:
a:2:{i:0;s:1:"2";i:1;s:1:"5";}
要比较的值只是当前记录的用户 ID,因此例如是 5。
如果当前用户5在序列化数据中查询帖子。
【问题讨论】:
标签: mysql arrays wordpress serialization