我的网站有一个自定义角色(“教练”),具有自己的一组功能(通过map_meta_cap
以及一些内置角色)。每个用户都在网站上分配了一个他们“拥有”的页面,并且可以编辑(通过前端编辑器)。
每页都有评论(改名为“评论”)。
这个系统运行得很好,除了一件事:WordPress不会在该用户(具有“coach”角色)不“拥有”的页面上返回评论。
我收到评论get_comments()
, 如果我注销、以管理员身份登录或以“coach”身份登录并查看coach的页面,它将返回我所期望的结果。以“coach”身份登录并查看其他页面时,get_comments()
返回空数组。
这似乎是一个角色/能力问题,但我很难确切地确定到底发生了什么。我曾尝试在教练的角色中添加各种能力,但运气不佳。
下面是我用来返回注释的代码:
$testimonials = get_comments( array(
\'post_id\' => $coach_post_ID,
\'status\' => \'approve\',
) );
正在运行
var_dump( $testimonials );
返回一个空数组,除非我以“coach”、管理员身份登录或完全注销。
教练们让所有的公众read
已启用功能(read
和read_coach
) 并且可以看到其他coach页面上的所有内容。
我很乐意提供您可能需要的任何信息来帮助诊断问题。提前感谢!