我使用wp查询,我需要使用作者id按作者显示帖子。
这是序列化数组:
a:19:{i:0;s:2:"89";i:3;s:3:"105";i:4;s:2:"74";i:5;s:3:"111";i:6;s:3:"167";i:7;s:2:"83";i:8;s:2:"54";i:9;s:2:"87";i:10;s:2:"85";i:11;s:2:"77";i:13;s:2:"82";i:14;s:2:"60";i:15;s:3:"149";i:16;s:3:"160";i:17;s:2:"71";i:18;s:1:"3";i:19;s:1:"2";i:20;s:3:"121";i:21;s:2:"57";}
此数组包含作者id,因此我的问题是如何通过使用序列化数组使用wp查询“author”或“author\\uu in”?
像这样:
$first_post_ids = get_posts( array(
\'fields\' => \'ids\',
\'post_type\' => \'the_posts\',
\'author__in\' => get_user_meta($current_user->ID, \'following_users\', true)
));
最合适的回答,由SO网友:Shibi 整理而成
你需要unserialize()
如果其序列化字符串。
在您的情况下,据我所知,您将数组存储在user\\u meta中,以便在存储时将其序列化。但当您使用get_user_meta
所以你不需要unserialize()
您的代码似乎很好。
$author_in = get_user_meta($current_user->ID, \'following_users\', true);
$first_post_ids = get_posts( array(
\'fields\' => \'ids\',
\'post_type\' => \'the_posts\',
\'author__in\' => $author_in
));