toastnz/silverstripe-catalogmanager

目录管理器为 SiteTree 实例的 ModelAdmin 编辑提供扩展

安装: 667

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 26

类型:silverstripe-vendormodule

5.2.1 2020-06-26 04:54 UTC

README

通过类似 LeftAndMain 的界面进行目录管理。允许您在 SiteTree 之外编辑和创建页面。

功能

安装

通过 composer 安装

$ composer require littlegiant/silverstripe-catalogmanager

如何使用

页面

将以下内容添加到配置 yml 文件中

CatalogPage:
  extensions:
    - CatalogPageExtension
  parent_classes:
    - CatalogParentPage

其中 CatalogPage 是要管理的页面类型(例如 BlogEntry),而 CatalogParentPage 是页面应存储在 SiteTree 中的位置(例如 BlogHolder)。您可以有多个父实例,管理将提供下拉菜单供用户选择父页面。

您也可以通过不提供父类在项目的根目录中(即 ParentID = 0)创建页面。

LandingPage:
  extensions:
    - CatalogPageExtension

然后只需扩展 CatalogPageAdmin 而不是 ModelAdmin

数据对象

您还可以通过 CatalogDataObjectExtension 管理数据对象

翻译

如果您使用可翻译的模块,可以使用 TranslatableCatalogExtension 提供选择语言的功能。

CatalogPageAdmin:
  extensions:
    - TranslatableCatalogExtension

选项

在 CMS 中隐藏页面

当使用目录管理器管理页面时,您可能希望隐藏这些页面在 CMS 中。您可以通过将 HidePageChildrenExtension 添加到容器页面来实现,例如。

CatalogPage:
  extensions:
    - CatalogPageExtension
  parent_classes:
    - 'CatalogParentPage'
CatalogParentPage:
  extensions:
    - HidePageChildrenExtension

页面复制

您可以通过每个对象的 can_duplicate 配置设置来禁用复制页面的功能。

CatalogPage:
  extensions:
    - CatalogPageExtension
  parent_classes:
    - 'CatalogParentPage'
  can_duplicate: false

拖放排序

当您将 sort_column 设置添加到配置时,可以使用 GridFieldSortableRows 添加拖放排序。默认情况下使用 Sort 列,这是 SiteTree 的默认设置,并由 CatalogDataObjectExtension 添加。

CatalogPage:
  extensions:
    - CatalogPageExtension
  parent_classes:
    - 'CatalogParentPage'
  sort_column: 'CustomSort'

如果您想禁用拖放排序,只需将 sort_column 设置为 false。

CatalogPage:
  extensions:
    - CatalogPageExtension
  parent_classes:
    - 'CatalogParentPage'
  sort_column: false

排序列会自动更新对象预发布和实时版本的排序列。要禁用此功能,您可以通过配置将 automatic_live_sort 选项设置为 false。

CatalogPage:
  extensions:
    - CatalogPageExtension
  parent_classes:
    - 'CatalogParentPage'
  automatic_live_sort: false

许可协议

MIT 许可协议 (MIT)

版权所有 (c) 2015 Little Giant Design Ltd

特此免费授予任何获得此软件及其相关文档副本(“软件”)的人士,无限制地使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许向提供软件的人士授予上述权利,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“现状”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论该责任是基于合同、侵权或其他方式,以及与软件或其使用或其他交易有关。

贡献

代码规范

本项目遵循以下标准定义