适用人群:
- 刚接触织梦CMS、想给自己的分类信息站或企业站增加“产品”“招聘”“房源”等独立内容类型的站长。
- 被内置文章模型限制住、想自由控制字段和模板的老手。
- 害怕后台复杂、一看到“自定义模型”就犯怵的新手。
(放心,只要你能点鼠标、会打字,这篇文章就能让你跑起来。)
第一步:进入后台→核心→频道模型→内容模型管理
登录织梦后台,默认路径是 /dede,点左侧菜单 “核心” → “频道模型” → 模型管理”。
你会看到系统自带的几个模型:普通文章、图集、软件、商品等。别动它们,我们新建一个。
操作:点击右上角 “增加模型” 按钮。
弹出一个表单,填三个关键信息:

手把手教你玩转织梦CMS自定义模型,30分钟搭建一个企业产品库
- 模型名称:你给这个内容类型起的名字,企业产品”。
- 模型表名:系统自动生成,建议保留默认(默认是
addon_你的拼音),无需改。 - 模型描述:随便写“产品模型”,方便以后看。
下面还有“模型类别”和“是否启用自定义字段索引”,新手保持默认就好(类别选“内容模型”,索引勾上“是”)。
点“确定”保存——此时模型“骨架”已经建好,但里面一个字段都没有。
第二步:添加自定义字段——把产品库变“活”
保存后自动跳回模型列表,找到你刚建的“企业产品”,点后面的 “字段管理”。
这就是核心环节,每一条产品所需要的属性,都要在这里“画”出来。
举个实际例子:我们要做一个产品展示页,需要:产品名称(标题)、价格、图片、规格、描述。
点击 “增加字段”,依次添加:
| 字段名 | 数据类型 | 说明 |
|---|---|---|
| price | 浮点型(小数) | 产品价格,保留两位小数 |
| pic | 图片类型 | 产品主图(支持上传) |
| specs | 文本 | 规格参数,500ml / 红色” |
| intro | 多行文本(编辑器) | 产品详细介绍,用富文本编辑器 |
要点:
- 字段名必须用英文小写,不要用汉字或带特殊符号,否则生成数据表会报错。
- 数据类型选错会导致后台输入框不对,比如价格用“数值型”而不是“浮点型”,就输不了小数。
- 如果你的产品有“品牌”“产地”这种固定选项,字段类型选 “下拉菜单”,然后在下方的“可选值”里一行一个写:
华为换行小米换行苹果。
每个字段加完,记得点“保存字段”,全部加好后,模型字段表就生成了。
第三步:创建栏目并绑定模型
回到 “核心” → “栏目管理”,点击 “增加栏目”。
- 栏目名称:我们的产品”。
- 栏目类型:一定要选 “频道封面” 或 “列表”?错!这里要选 “最终列表页”列表,点击后进入文章列表)。
- 最关键的:在 “模型选择” 中勾选你刚建的“企业产品”(默认只显示“普通文章”,你需要手动下拉选择)。
配置要点:
- 栏目文件夹建议用英文,
product,别用中文。 - 是否开启“列表分页”?新手建议开,每页设12条。
- 是否开启“文章排序”?如果你希望产品能按价格排序,就开,并在字段里加一个排序字段(如
weight)。
保存栏目后,去前台访问这个栏目,你会发现系统自动生成了列表页和内容页的模板,但样式很丑——这正是后面要调整的。
第四步:模板调用——让字段在前台显示
织梦的模板标签语法类似 {dede:field.字段名/}。
你需要在模板目录(/templets/你的模板名/)下找到对应文件:
- 列表页:
list_product.htm(系统会自动生成一个,但内容为空) 页:article_product.htm
页关键代码示例**(写在<body>里):
<h1>{dede:field.title/}</h1>
<p>价格:¥{dede:field.price/}</p>
<img src="{dede:field.pic/}" alt="{dede:field.title/}">
<p>规格:{dede:field.specs/}</p>
<div>{dede:field.intro/}</div>
列表页调用(循环显示产品):
{dede:list pagesize='12'}
<li>
<a href="[field:arcurl/]"><img src="[field:pic/]" alt=""></a>
<h3>[field:title/]</h3>
<span>¥[field:price/]</span>
</li>
{/dede:list}
注意:列表页不能直接用 {dede:field.xxx/} 的语法,而是用 [field:xxx/](中括号),别搞混了,否则整个列表不显示。
常见踩坑与救命提醒
踩坑1:后台添加内容时,自定义字段不显示
原因:模型表与系统表关联字段设置错误。
解决:回模型管理,把“内容模型”的 “自动生成表” 关掉再开启一次,或者检查数据库里 dede_addon_product 表是否存在,字段名是否与后台定义一致,最粗暴办法:删除该模型重新建一个。
踩坑2:图片字段上传后不显示路径
原因:织梦默认图片字段需要调用绝对路径。
解决页标签前加 {dede:global.cfg_basehost/} 拼接,或者后台系统设置里关闭“图片路径相对化”,推荐直接使用 [field:pic function='GetOneImgUrl(@me,0)'/] 这种函数处理(百度搜“织梦图片字段调用”有现成代码)。
踩坑3:列表页分页失效或样式错乱
原因:栏目绑定模型后,系统自动生成了缓存,但分页标签写法不对。
解决:确保列表页模板里写的是 {dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/},{dede:list} 标签外不要有多余的 <div> 嵌套导致解析异常。
踩坑4:自定义字段排序不生效
原因:列表页标签默认按发布时间排序,要改排序需加参数。
解决:在 {dede:list} 标签里加 orderby='price' orderway='asc'(按价格升序),注意字段名要和你添加时填的一致。
踩坑5:后台“内容发布”页面加载巨慢
原因:自定义字段太多,且每个字段都开启了“索引”(织梦后台字段管理的复选框)。
解决:非搜索字段(如描述、图片)不要勾选“索引”,只有需要“按该字段搜索”时才勾选,否则每次页面加载会全表扫描,卡死你。
最后一句忠告(老司机语气)
自定义模型是织梦最强大的功能之一,但也最容易被忽略,很多新手喜欢用“文章模型”去硬套所有内容,结果后期改模板改到崩溃。别偷懒,花10分钟建模型,后面所有页面都是自动生成的。
做好之后,记得去后台“系统”->“SQL命令行工具”里运行一行:OPTIMIZE TABLE dede_addon_product(每过一段时间清理碎片),数据库轻松,网站才抗造。
关掉这篇文章,去后台动手试试,出了问题?评论区或群里吼一声,带上你的截图和字段名,别问我“能不能”,先试。
发表评论