在后端而非管理员界面上添加页面

时间:2019-01-25 21:32:22

标签: apostrophe-cms

我想制作一个扩展layout.html的html文件,但用户无法通过CMS将其添加为其他任何页面的类型。

1 个答案:

答案 0 :(得分:0)

您可以使用parked pages解决此问题。您可以将某些页面配置为始终存在于某些位置,并且type属性是可以强制设置为特定值的页面之一。这样的停放属性无法编辑。

// app.js
module.exports = {
  modules: {
    'apostrophe-pages': {
      // other configuration, then...
      park: [
        {
          title: 'Special',
          slug: '/special',
          type: 'special',
          published: true,
          parkedId: 'special'
        }
      ]
    }
  }
}

这是顶层页面所需的全部。如果您还需要停放的子页面,则可以 可以向停放的父级添加_children数组子属性。

请确保包含唯一的parkedId。如果配置以其他方式更改,则可以避免与其他暂存页面的混淆。

请注意,您不必 special选项中包含types。忽略它可以确保您从未在其他任何页面上选择它。

如果每次都丢失或更改了驻留属性,则在应用程序的每次启动时都会刷新驻留页面。该界面通常也可以防止这种情况。

希望这会有所帮助!