迅睿CMS 自定义字段与内容模型扩展实战

· 迅睿CMS · 阅读 10
摘要

先说结论迅睿CMS 最强的能力就是不改核心代码就能扩展数据结构。做一个「产品库」只需三步:建模型 → 加字段 → 改模板。全程在后台完成,不动一行 PHP。一、什么时候该建新模型满足以下任一条,就该建独立模型:字段和现有模型差异超过一半;需

先说结论

迅睿CMS 最强的能力就是不改核心代码就能扩展数据结构。做一个「产品库」只需三步:建模型 → 加字段 → 改模板。全程在后台完成,不动一行 PHP。

一、什么时候该建新模型

满足以下任一条,就该建独立模型:

  • 字段和现有模型差异超过一半;
  • 需要独立的列表页模板和详情页模板;
  • 需要独立 URL 结构(如 /product/);
  • 需要独立权限或独立审核流程。

反之,如果只是多几个字段,直接在原模型加字段更划算。

二、建模型实操步骤

  1. 后台 → 内容 → 内容模型 → 新增模型;
  2. 填写模型名称(如「产品」)、模型别名(英文,用于 URL);
  3. 选择是否开启栏目、是否支持分页、是否支持评论;
  4. 保存后进入「字段管理」,开始加字段。

三、字段类型选择对照表

字段用途推荐类型说明
产品名称单行文本标题字段一般自带
价格数字便于排序和筛选
规格说明多行文本短内容不要用富文本
产品详情富文本对应 content 字段
缩略图单图上传列表页展示用
产品图集多图上传详情页轮播用
上架时间日期时间便于按时间排序
是否推荐单选/开关控制首页推荐位
所属分类联动/下拉产品二级分类

四、加字段的 5 条原则

  1. 字段名用英文+下划线,如 product_price,别用中文;
  2. 必填项尽量少,否则录入效率极低;
  3. 能复用的不新建,比如「推荐」字段可在多个模型共用;
  4. 图片字段分开建:缩略图和内容图用途不同,混用会导致列表页加载慢;
  5. 加完字段立刻改模板,否则字段加了也不会显示。

五、模板里怎么调用自定义字段

{module module=product catid=$catid num=8}
    <div class="item">
        <img src="{$t['thumb']}">
        <h3>{$t['title']}</h3>
        <p>价格:{$t['product_price']} 元</p>
        <p>规格:{$t['product_spec']}</p>
    </div>
{/module}

注意:字段名必须与后台建的字段完全一致,包括大小写和下划线。

六、常见踩坑

  • 字段加了但列表不显示:列表标签默认不返回所有字段,需在标签里指定 fields="*" 或明确列出;
  • 数字字段排序错乱:字段类型选成了文本,改成数字即可;
  • 多图字段输出异常:多图存的是数组,需先 json_decode 或按分隔符拆分。

总结

自定义字段的价值在于用配置代替开发。规划时少即是多,字段越精简,后期维护越轻松;调用时严格对齐字段名,能避免绝大多数「加了不显示」的问题。