toastnz / silverstripe-catalogmanager
目录管理器为 SiteTree 实例的 ModelAdmin 编辑提供扩展
Requires
This package is auto-updated.
Last update: 2024-08-27 06:47:49 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
特此免费授予任何获得此软件及其相关文档副本(“软件”)的人士,无限制地使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许向提供软件的人士授予上述权利,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“现状”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论该责任是基于合同、侵权或其他方式,以及与软件或其使用或其他交易有关。
贡献
代码规范
本项目遵循以下标准定义