非编辑者,在 Apostrophe CMS 中经过身份验证的用户

Non editor, authenticated users in Apostrophe CMS

据我了解,在 Apostrophe CMS 中,经过身份验证的非来宾用户始终是编辑者,根据设置具有或多或少的编辑权限,但始终是访问编辑内容的人,因此所有撇号 UI 会在您登录后立即弹出。但是,在我的网站中通常的 workflow/requirements 中,用户(如 "visitors" 中)需要登录才能访问某些特定页面或来宾访问者无法使用的功能,因此我们最终有 3 种不同类型的用户:来宾访问者、经过身份验证的访问者和编辑。

目前,为了能够对非编辑用户进行身份验证,我尝试将 views\layout.html 中的块 apostropheMenuapostropheContextMenu 覆盖为类似这样的内容.

  {% block apostropheMenu %}
    {% if userHasEditorPermissions %}
      {{ super()}}
    {% if asdf %}
  {% endblock %}

这是这样做的正确方法还是有更好的选择?原始 "apostropheMenu" 块检查 data.user 是否存在以显示 UI,我应该直接在 data.user 中检查权限还是在 [=15] 中添加该功能=]?

向 Apostrophe 团队致以诚挚的问候和感谢!

我认为模板检查的一些变体是一个很好的方法。

专门为经过身份验证的来宾设置 apostrophe-group(授予他们来宾权限),然后检查模板中的特定 ,查看内部 data.user._groups 并决定是否渲染某些 UI.