我有一个wordpress博客,有许多用户角色。以admin
get_posts
登录时似乎返回所有posts
但是当以retailer
(我创建的角色)登录时,我只获取登录用户创建的帖子
$argArray = array('post_type' => $type, 'post_status' => 'publish', 'orderby' => 'title','numberposts' => -1 );
$posts = get_posts($argArray);
以管理员身份登录时,此代码会返回网站中的所有帖子,但在以零售商身份登录时,仅返回用户创作的帖子。
BTW $type
是post_type
在文件中或任何地方都没有提到这一点。是我做错了还是应该是这样的?
提前致谢!!
已更新
我正在查看这个似乎worpdress查询确实在wordpress查询中添加了作者参数。我做了新的WP_Query()并进行了检查。
这是我要删除的部分wp_posts.post_author = 347
这在admin进行的查询中不存在。我在wordpree查询中看到remove_query_arg
但不确定何时以及如何使用它,以及它是否可以用于在查询中删除此参数。
帮助!!
答案 0 :(得分:0)
尝试确保为您的角色retailer
分配了适当的roles and capabilites
。
get_posts
使用WP_Query
,其中验证了这些限制。
最后,如果我没有弄错的话,请查看get_pages
,因为我查了一下,在查询中没有这样的验证。