somardesignstudios/silverstripe-contentblocks

此包已被弃用且不再维护。未建议替代包。

添加内容块功能

1.3.0 2018-08-20 21:03 UTC

This package is auto-updated.

Last update: 2023-09-26 10:14:13 UTC


README

Build Status Scrutinizer Code Quality

向页面添加不同布局的内容块。

安装

Composer

composer require somardesignstudios/silverstripe-contentblocks

手动

下载存档并解压到您的网站根目录。

功能

此模块提供四种不同的内容块布局。

列布局

此内容块允许最多 3 列的内容,具有背景颜色选项。列高度与 jQuery match heights 插件匹配。

手风琴

此内容块提供基本的 Bootstrap panel-collapse 功能。

拼贴版块

此内容块提供类似着陆页的拼贴布局。每个拼贴可以包含图片、标题、副标题和链接。拼贴可以以两行或三行显示。还支持用户选择的模板。

GridFieldDropdownAddNewButton

待办事项

案例研究

待办事项

用法

ContentBlockExtension 将为所有页面添加内容块选项卡和 GridField。每个内容块类都有自己的按钮以添加到页面。

目前,您可以通过循环 ContentBlocks 并使用 $RenderBlock 将这些添加到任何模板中。

Layout/Page.ss

<% if ContentBlocks %>
    <% loop ContentBlocks %>
        $RenderBlock
    <% end_loop %>
<% end_if %>

未来的改进包括允许通过短代码单独插入内容块,以及允许通过下拉字段创建内容块,而不是单个按钮。

如果没有,则样式将是基本的,这是为了允许您完全控制内容块的视觉效果,当然除了 Bootstrap 部分之外。

配置

基本配置

include_bootstrap

此模块需要 Twitter Bootstrap 3 来实现多个布局和组件。建议将 Bootstrap 包含在您的主题中,这样您将更好地管理层叠样式。但是,为了快速入门,您可以设置一个配置标志以包含模块的 bootstrap 库,该库仅包含组件所需的 CSS。

config.yml

ContentBlock:
  include_bootstrap: true

types

指定应在 GridFieldDropdownAddNewButton 中创建哪些类型。 config.yml

ContentBlock:
  types:
    ClassName: 'Dropdown Label'

扩展

在大多数适当的位置提供了扩展钩子,以便您可以轻松自定义行为。如果您认为缺少一个,请随时提出问题或创建一个拉取请求。

模板

您可以通过在主题文件夹中创建同名的模板来覆盖此模块中的任何默认模板。

列布局

column_classes

您可以通过 column_classes 选项配置将应用于每个列的类。

config.yml

ContentBlock_ColumnLayout:
  column_classes:
    - 'my-custom-css-class'
    - 'another-class'

colour_options

您可以通过 colour_options 选项配置背景颜色选项。

config.yml

ContentBlock_ColumnLayout:
  colour_options:
    ffffff: 'White'
    hexcode: 'Dropdown Label'

手风琴

accordion_classes

您可以通过 accordion_classes 选项配置将应用于所有面板的类。

config.yml

ContentBlock_Accordion:
  accordion_classes:
    - 'my-custom-css-class'
    - 'another-class'

拼贴版块

待办事项

  • tile_classes
  • tile_templates

案例研究

待办事项

开发

待办事项

待办事项

  • 测试
  • 国际化
  • 短代码