什么是独立模型?

在 Dedecms 中,默认的内容模型有:

dedecms独立模型教程
(图片来源网络,侵删)
  • 文章模型:用于发布新闻、资讯、博客等。
  • 图集模型:用于发布图片集。
  • 下载模型:用于发布软件、文档等下载资源。

独立模型(自定义模型) 就是允许你根据网站需求,创建一个全新的内容类型,你可以创建一个“产品模型”,它可能包含“产品规格”、“市场价格”、“批发价格”、“产品品牌”等字段,这些字段在默认的“文章模型”中是没有的。

创建独立模型的核心目的就是结构化,方便管理和调用。


教程目标

我们将创建一个名为“产品”的独立模型,并为其添加以下自定义字段:

  1. price (价格):数字类型
  2. brand (品牌):单选类型
  3. specs (规格):多行文本类型

完成这个模型后,你将拥有一个专门用于发布和管理产品内容的频道。

dedecms独立模型教程
(图片来源网络,侵删)

第一步:创建新模型

这是最核心的一步,我们需要在后台定义模型的所有信息。

  1. 登录后台:使用管理员账号登录你的 Dedecms 后台。

  2. 进入模型管理

    • 在左侧菜单栏中,找到并展开 【核心】 选项。
    • 点击 模型管理】
  3. 创建新模型

    • 模型管理页面,点击右上角的 【增加一个新模型】 按钮。
  4. 填写模型信息

    • 模型名称:给你的模型起一个清晰的名字,产品”。
    • 模型表前缀:系统会自动生成一个唯一的表前缀,如dede_后面的部分,通常不需要修改
    • 附加表:这是存储模型额外数据的表,也通常不需要修改
    • 列表命名规则:设置产品列表页的URL命名规则,/products/{typedir}/
    • 文章命名规则:设置产品详情页的URL命名规则,/products/{typedir}/{aid}.html
    • 字段是否支持HTML:如果你的字段内容需要支持富文本编辑(比如产品详细介绍),就勾选“是”,对于价格、规格等简单字段,保持“否”即可。
    • 简介:简单描述一下这个模型的用途,用于发布公司产品信息”。
  5. 保存模型

    • 点击页面底部的 【保存】 按钮。
    • 系统会提示“成功创建一个新模型!”。注意:系统会提示你需要更新一下系统缓存,请务必点击“更新系统缓存”按钮,否则新模型将不会在前台显示。

第二步:为模型添加自定义字段

模型创建成功后,它只是一个空架子,现在我们需要为它添加自定义字段,来定义产品信息的具体内容。

  1. 进入字段管理

    • 在后台左侧菜单,依然在 【核心】 下,点击 模型管理】
    • 在模型列表中,找到你刚刚创建的“产品”模型,点击其右侧的 【字段管理】 按钮。
  2. 添加第一个字段:价格

    • 在字段管理页面,点击右上角的 【增加新字段】 按钮。
    • 字段名:必须是英文或数字,price
    • 字段提示:在后台添加内容时,会显示在这里,请输入产品价格”。
    • 字段类型:选择 数字
    • 默认值:可以留空,或者设置一个默认值,如 0
    • 其他选项:保持默认即可。
    • 点击 【保存】
  3. 添加第二个字段:品牌

    • 再次点击 【增加新字段】
    • 字段名brand
    • 字段提示:“请选择产品品牌”。
    • 字段类型:选择 单选
    • 选项(一行一个):在这里输入品牌名称,每行一个。
      苹果
      三星
      华为
      小米
    • 点击 【保存】
  4. 添加第三个字段:规格

    • 再次点击 【增加新字段】
    • 字段名specs
    • 字段提示:“请输入产品规格”。
    • 字段类型:选择 多行文本(文本区域)
    • 其他选项:保持默认。
    • 点击 【保存】

你可以根据需要继续添加更多字段,如上传图片、下拉菜单等。


第三步:创建栏目并应用模型

字段定义好了,现在我们需要创建一个“产品”栏目,并让它使用我们刚刚创建的“产品”模型。

  1. 进入栏目管理

    • 在后台左侧菜单,找到并展开 【频道】 选项。
    • 点击 【栏目管理】
  2. 创建顶级栏目

    • 点击 【增加一个顶级栏目】 按钮。
    • 栏目名称:“产品中心”。
    • 栏目类型:选择 【频道栏目】
    • 模型这是最关键的一步! 从下拉列表中选择我们创建的 “产品” 模型。
    • 列表模板:选择一个适合的列表页模板,如 list_product.htm (你可能需要自己创建或修改默认模板)。
    • 文章模板:选择一个适合的详情页模板,如 article_product.htm
    • 其他选项根据需要填写,如栏目目录、是否生成等。
    • 点击 【确定】 保存。
  3. 创建子栏目(可选)

    • 你可以继续为“产品中心”创建子栏目,手机”、“电脑”、“配件”等。
    • 在创建子栏目时,模型 同样需要选择 “产品” 模型。

第四步:发布和查看内容

所有准备工作都已完成,我们可以开始发布产品内容了。

    • 在后台左侧菜单,点击 【核心】 -> 【普通文章】
    • 你会发现,发布文章的界面变了,顶部的“请选择发布栏目”下拉列表中,现在包含了你创建的“产品中心”及其子栏目。
    • 选择一个产品栏目,手机”。
    • 、来源、作者等信息。
    • 向下滚动,你会看到我们自定义的字段:“请输入产品价格”、“请选择产品品牌”、“请输入产品规格”等。
    • 填写这些字段的内容。
    • 在“”编辑器中,填写产品的详细介绍。
    • 点击 【保存发布】【保存草稿】
  1. 在前台查看

    • 确保你的网站已经开启了“使用伪静态”功能(在后台系统设置中)。
    • 访问你设置的产品栏目链接(你的域名/products/),你应该能看到产品列表。
    • 点击进入某个产品的详情页,可以看到你填写的所有信息,包括自定义字段。

第五步:调用独立模型的内容(重要)

在模板文件中,调用独立模型的数据与调用普通文章略有不同,普通文章使用 field.body,而独立模型的额外字段需要使用 field.字段名 来调用。

假设你的产品详情页模板是 article_product.htm,你想在标题下方显示价格和品牌。

模板代码示例 (article_product.htm):

{dede:field.title/}
<!-- 这是自定义字段的调用方式 -->
<div class="product-info">
    <p><strong>价格:</strong>¥{dede:field.price/}</p>
    <p><strong>品牌:</strong>{dede:field.brand/}</p>
    <p><strong>规格:</strong>{dede:field.specs/}</p>
</div>
<hr>
{dede:field.body/}

调用列表页数据:

在列表页模板(如 list_product.htm)中,使用 {dede:list} 标签循环,同样使用 field.字段名 来调用。

{dede:list pagesize='10'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
        <span>价格:¥[field:price/]</span>
    </li>
{/dede:list}

常见问题与注意事项

  1. 更新缓存:创建模型、添加字段、修改栏目后,一定要去后台 【系统】 -> 【系统基本参数】 -> 【性能选项】 中点击 【更新系统缓存】,否则修改可能不会生效。
  2. 模板文件:你可能需要根据新模型的特点,创建或修改 list_xxx.htmarticle_xxx.htm 模板文件,以更好地展示自定义字段的内容。
  3. 数据表:每创建一个独立模型,系统都会在数据库中创建一张新的附加表(如 dede_addonproduct)来存储这些自定义字段的数据,了解这一点有助于你进行二次开发或数据迁移。
  4. 命名规则:在创建模型时设置的URL命名规则,会影响所有使用该模型的栏目URL,请谨慎设置。

通过以上五个步骤,你就已经成功掌握了 Dedecms 独立模型的创建和使用方法,你可以利用这个强大的功能,构建出结构清晰、内容丰富的专业网站。