批量导入文章

批量导入文章
批量导入文章
批量导入文章
批量导入文章

基于BadouCMS的批量导入文章插件

支持通过Excel/CSV批量导入文章到CMS系统,包括主表和扩展表数据

1. 导入功能实现

1.1 文件上传与解析

badoucms文件导入配置

上传导入文件

  • 位置: controller/Index.php:upload()
  • 支持格式: .xlsx, .xls, .csv
  • 文件大小限制: 10MB
  • 行数限制: 可配置(默认5000行)

1.2 字段映射机制

  • 别名映射: 通过配置文件定义Excel表头与数据库字段的映射关系
  • 扩展字段支持: 自动识别以ext_开头的扩展字段
  • 智能识别: 支持从表头提取字段描述信息,格式如:ext_field(类型)[描述]

1.3 数据验证

  • 必填字段验证: 栏目(scode)和标题(title)为必填项
  • 栏目存在性验证: 支持栏目ID或栏目代码
  • 日期格式验证: 按配置的日期格式进行验证
  • 扩展字段验证: 根据字段类型进行相应验证(单选、多选、日期、文件等)

1.4 数据规范化

  • 布尔字段处理: 将各种格式的布尔值(1/0, true/false, yes/no等)统一转换为1/0
  • 日期格式化: 统一转换为Y-m-d H:i:s格式
  • 扩展字段格式化: 根据字段类型进行相应格式化处理

2. 导出功能实现

2.1 模板生成

导出excel

  • 位置: controller/Index.php:template()
  • 动态模板: 根据选定栏目和模型动态生成Excel模板
  • 字段提示: 为不同类型字段添加相应的使用提示
  • 示例数据: 提供符合字段规范的示例数据
  • 说明工作表: 生成详细的字段填写说明

2.2 模板特点

  • 智能表头: 根据字段类型添加提示信息
  • 扩展字段支持: 自动包含相关模型的扩展字段
  • 多工作表: 包含数据表和说明表

3. 数据库操作

3.1 数据存储

  • 主表: cms_content - 存储文章基本信息
  • 扩展表: cms_content_ext - 存储扩展字段数据
  • 事务处理: 使用数据库事务确保数据一致性

3.2 扩展字段处理

  • 动态获取: 根据模型代码动态获取扩展字段定义
  • 类型映射: 将数据库字段类型映射到前端组件类型
  • 选项解析: 解析字段的可选值配置

4. 配置管理

4.1 可配置项

  • 默认语言代码: importdoc_default_acode
  • 默认发布状态: importdoc_default_status
  • 默认作者: importdoc_default_author
  • 日期格式: importdoc_date_format
  • 允许的文件扩展名: importdoc_allowed_exts
  • 最大导入行数: importdoc_max_rows
  • 扩展字段列表: importdoc_ext_fields
  • 字段别名映射: importdoc_alias_map

4.2 配置特点

  • JSON格式: 字段别名映射使用JSON格式存储
  • 灵活配置: 支持根据需求调整各种参数
  • 验证规则: 配置项包含相应的验证规则

BadouCMS官网 » 批量导入文章

点赞(0)

官方QQ群①

963655847

返回
顶部