我找到了一种隐藏帖子的方法,通过将当前用户元键值与特定用户字段的作者预先批准的元键值列表相匹配。例如,First\\u name。
代码重定向与作者元值列表不匹配的任何当前用户。这很有效。
我想做的是让作者能够通过选择“公共”类别或“私人”类别,让所有人都可以访问他们的一些帖子。
目前,当前用户无法看到作者的任何帖子,这些帖子与他们的元数据不匹配。通过此修复,他们将能够看到任何不属于“private”类别的帖子。顺便说一句,所有帖子都只能通过登录查看。
这是我的代码中限制访问帖子的部分。我在post\\u类别中添加了。我尝试了下面的类别名称、类别ID和数组,尽管我只想创建一个与一个类别的匹配。
如何在限制中包括特定类别?
$myposts = get_posts(array(
\'p\' => $pid,
\'posts_per_page\' => -1,
\'post_type\' => \'post\',
\'post_category\' => array(\'4\'),
\'post_status\' => \'publish\',
\'author\' => $value[0],
));
最合适的回答,由SO网友:Lucas Pulliese 整理而成
如果你想获得该类别的帖子
$myposts = get_posts(array(
\'p\' => $pid,
\'posts_per_page\' => -1,
\'post_type\' => \'post\',
\'category__in\' => array( 4 ),
\'post_status\' => \'publish\',
\'author\' => $value[0],
));
如果你想获得没有该类别的帖子
$myposts = get_posts(array(
\'p\' => $pid,
\'posts_per_page\' => -1,
\'post_type\' => \'post\',
\'category__not_in\' => array( 4 ),
\'post_status\' => \'publish\',
\'author\' => $value[0],
));
看看这一点,可能会对您的未来有所帮助:
https://gist.github.com/luetkemj/2023628