minimalic/silverstripe-fundamental

提供构建使用 Silverstripe CMS 5 和 Elemental 模块构建模块化页面的基本、基础元素。

安装: 25

依赖项: 0

建议者: 0

安全性: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:silverstripe-vendormodule

2.3.1 2024-06-11 22:54 UTC

This package is auto-updated.

Last update: 2024-09-11 23:25:16 UTC


README

提供构建使用 Silverstripe CMS 和 Elemental 模块的基本、基础元素。

需求

安装

要安装 Fundamental(包括需求),请使用 Composer

composer require minimalic/silverstripe-fundamental

通过在壳中导航到您的网站根目录并运行以下命令来刷新数据库:vendor/bin/sake dev/build "flush=all"

或者,使用您的基 URL: /dev/build?flush=all

推荐扩展

Fundamental 扩展针对网格字段批量编辑工具提供的“批量上传”功能进行了优化。

使用 composer 安装(可选)

composer require colymba/gridfield-bulk-editing-tools

可用模块

  • 图片块(ModuleImage)- 单张图片横幅块
  • 英雄横幅块(ModuleHeroBanner)- 显示带有文字叠加的图片横幅
  • 英雄分割块(ModuleHeroSplit)- 显示图像和文字并排显示的英雄分割。允许切换顺序
  • 幻灯片(ModuleSlideshow)- 图片滑块/旋转木马(兼容 Bootstrap)
  • 画廊(ModuleGallery)- 以网格形式显示图片缩略图

自定义

模块化页面的自定义主题

在您的主题的 template 目录内创建自己的 ModularPage.ss 模板,路径为

minimalic/Fundamental/Pages/Layout/

模块的自定义主题

默认情况下,Fundamental 扩展使用 Bootstrap 5 类进行模板化。

要覆盖模块/块的默认模板,请在您的主题的 template 目录内创建自己的模板文件(例如,ModuleImage.ss

minimalic/Fundamental/Modules/

或者,将整个 vendor/minimalic/silverstripe-fundamental/templates/ 目录复制到您的 templates/ 目录中,并自定义所有模板覆盖。

自定义图片上传目录选项

默认情况下,图片(模块:“图片块”、“英雄横幅块”...)将被上传到 images/parent-class/parent-title,其中 parent 是包含模块的页面/对象。要更改此行为,请将以下内容添加到您的配置中(例如,在 mysite.yml 中)

minimalic\Fundamental\Modules\ModuleImage:
  image_directory_name: 'images'
  image_directory_sub_struct: 'class/parent'

对于 image_directory_name 配置选项,您可以选择上传文件的顶级目录名称。对于 image_directory_sub_struct 的可用选项有

  • parent(父页面标题)
  • class/parent(父页面类/标题,默认)
  • element(当前元素标题)
  • class/element(当前元素类/标题)

“幻灯片”和“画廊”模块提供了一个额外的 image_directory_sub_struct 选项

  • parent/element(父页面标题/当前元素标题)
minimalic\Fundamental\Modules\ModuleGallery:
  image_directory_name: 'images'
  image_directory_sub_struct: 'parent/element'

全局配置

设置图像调整大小质量(可选)

在您的配置中设置全局图像质量(例如,mysite.yml)并启用强制重新采样以用于未调整大小的图像(可选)

SilverStripe\Assets\File:
  force_resample: true

SilverStripe\Assets\Storage\DBFile:
  force_resample: true

SilverStripe\Core\Injector\Injector:
  SilverStripe\Assets\Image_Backend:
    properties:
      Quality: 70

重新映射本地 Elemental 扩展(可选)

如果您已经使用 ElementalPageExtension 并想用此模块提供的页面类型替换它,则此步骤是必要的。

要重新映射现有的 App\Pages\ModularPageElementalPage(您的自定义 Elemental 页面扩展的类名,如果有的话),请在您的 mysite.yml 中使用以下配置

SilverStripe\ORM\DatabaseAdmin:
  classname_value_remapping:
    'App\Pages\ModularPage': 'minimalic\Fundamental\Pages\ModularPage'

App\Pages\ModularPage 替换为您的类名。同时确保您现有的 table_nameModularPage;如果不是,您应该重命名您的表。

在重建数据库后,您可以删除 mysite.yml 中的这些重映射行。您现有的 Elemental 页面现在应使用此模块。

许可证

查看 许可证

版权所有 (c) 2024,minimalic.com - Sebastian Finke 保留所有权利。