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