toastnz / blocks

Silverstripe内容块模块

维护者

详细信息

github.com/toastnz/blocks

源码

问题

安装数: 10,517

依赖: 1

建议者: 0

安全: 0

星星: 0

关注者: 5

分支: 1

开放问题: 4

类型:silverstripe-vendormodule


README

简单的内容块系统。无特殊功能,易于实现。

要求

查看composer.json

安装

将以下内容添加到您的config.yml中(可选)

PageController:
  extensions:
    - Toast\Blocks\Extensions\PageControllerExtension

使用Page或扩展自SiteTree的其他类。

在您的Layout/Page.ss模板中添加以下内容

<% loop $ContentBlocks %>
    $ForTemplate
<% end_loop %>

配置

添加/移除可用的块类

Toast\Blocks\Extensions\PageExtension
  available_blocks:
    - Toast\Blocks\TextBlock

创建自定义块

扩展Block以创建新的块类型。

<?php
 

class MyBlock extends Toast\Blocks\Block
{
    private static $singular_name = 'My Block';
    private static $plural_name = 'My Blocks';
    private static $icon = 'mysite/images/blocks/custom.png';
    
    private static $db = [
        'Content' => 'HTMLText'
    ];

}

/themes/default/templates/Toast/Blocks/MyBlock.ss:

<%-- Your block template here --%>

<h2>$Title</h2>
$Content

待办事项

  • 模板全局提供者
  • 分区
  • 重复处理程序
  • 测试
  • 使用Through表进行更高级的版本控制