扩展区块类型

橙子CMS支持扩展自定义区块类型,满足个性化展示需求。

现有区块类型

  • custom:自定义 HTML 内容
  • slide:幻灯片轮播

添加新类型步骤

1. 修改模型

app/model/blockmodel.php 中新增渲染方法:

public function renderNewType($block) {
    // 自定义渲染逻辑
    return '<div>新类型内容</div>';
}

2. 修改控制器

app/controller/admin/blockcontroller.php 中添加类型选项。

3. 修改模板

在区块管理模板中添加新类型的表单字段。

示例:添加视频区块

// 在 blockmodel.php 的 renderBlock 方法中添加
elseif ($block['type'] == 'video') {
    return $this->renderVideoBlock($block);
}

public function renderVideoBlock($block) {
    $url = $block['content']['url'] ?? '';
    return '<div class="video-wrapper"><video src="' . $url . '" controls></video></div>';
}

注意事项

  • 新类型需要在前端和后端同步修改
  • 确保数据结构兼容现有系统