nobrainerweb / silverstripe-content-blocks
将页面内容分割成可管理的块/部分,每个块都有自己的模板
Requires
- bummzack/sortablefile: ~1.2
- silverstripe/cms: 3.*
- silverstripe/framework: 3.*
Suggests
- jonom/focuspoint: Crop an image based on a focus point
- silverstripe-australia/gridfieldextensions: Sort content blocks
- unisolutions/silverstripe-copybutton: Adds the option to duplicate dataobjects and their relations
This package is auto-updated.
Last update: 2024-08-28 23:50:55 UTC
README
将页面内容分割成可管理的部分/块,每个块都有自己的模板。
创建引人注目且独特的页面
此模块允许您将内容创建为小块,而不是一个大的内容区域。
安装此模块后,所有页面将添加一个“块”标签页。块标签页包含一个GridField,允许您创建任意数量的内容块。每个内容块可以分配自己的模板。模块附带一组标准模板。
您可以轻松创建自己的块模板,甚至创建具有独特字段的自己的块数据对象。这使得内容编辑员可以轻松创建具有多种变化的页面,而无需了解HTML,无需与表格等纠缠。创建自己的块模板和/或扩展Block数据对象以创建
- 图片列表(简单相册)
- 员工列表
- 产品列表
- 等等
版本兼容性
在Silverstripe 3.1.2上测试
安装说明
- 将此模块放在站点的根目录下,命名为content-blocks。
- 将以下代码添加到您 themes/your_design/templates/Layout/Page.ss 中,您希望内容块渲染的位置
<div class="blocks"><% loop ActiveBlocks %>$Me<% end_loop %></div>
或者,您可以通过其ID请求单个块进行渲染(将5替换为您的ID)
$OneBlock(5)
- 安装以下依赖模块
-
GridField Extensions https://github.com/ajshort/silverstripe-gridfieldextensions/
-
Better buttons for GridField by unclecheese https://github.com/unclecheese/silverstripe-gridfield-betterbuttons
-
或者使用Composer
"nobrainerweb/silverstripe-content-blocks": "dev-master"
-
运行 sitename.com/dev/build?flush=all
-
模块将复制 content-blocks/templates/BlockTemplates 到 themes/your_design/templates/BlockTemplates,如果失败,请手动复制文件。
-
模块将复制 content-blocks/css/sections.css 到 themes/your_design/block.css,如果失败,请手动复制文件。
使用和自定义
- 将您自己的模板添加到 themes/your_design/templates/BLcokTemplates 中,它们需要具有 .ss 扩展名,并删除任何不需要的模板(模块中包含固定宽度和流体宽度模板的完整示例集)
- 添加模板后始终运行 dev/build?flush=1
- 修改模板后请记得 ?flush=1
截图
待办事项
- 无需编码即可添加更多内容占位符 - 网站配置?
- 处理搜索
- 版本控制
想法
- 将可用的模板保存在数据库中(枚举字段) - 在开发/构建时创建或使用模板清单
- 内置模板生成器
- 表单块
- 更好的预览(从设计复制粘贴)
- 可能将基础模板作为建议的composer需求添加(以及其他CSS框架)