如何将 SilverStripe 中的页面类型的查看权限限制为仅限管理员用户?

How can I restrict view access to a page type in SilverStripe to admin users only?

如何将 SilverStripe 中的页面类型的查看权限限制为仅限管理员用户?

我更愿意通过代码本身来完成,但如果知道也可以通过 CMS 来完成。

我认为 this answer 让我完成了大部分工作;也许我只需要找到 Administrators 组?

是的,您链接到的答案就是您需要做的。要获取群组的 ID,您可以这样做 Group::get()->filter('Code', 'administrators')->first()->ID;.

另一种方法是检查权限,例如

public function canView($member = null) {
    return Permission::checkMember($member, "ADMIN") !== false;
}

As Willr mentions here 检查权限可能会更好。

您可能会发现这些 API 很有用: