dede 自定义模型添加数据

99ANYc3cd6
预计阅读时长 12 分钟
位置: 首页 DEDE建站 正文

第一步:前提条件 - 确保模型已创建

在开始添加数据之前,请确保你已经完成了以下准备工作:

dede 自定义模型添加数据
(图片来源网络,侵删)
  1. 登录后台:使用你的管理员账号登录 DedeCMS 后台。
  2. 创建模型:在后台菜单中,找到 【核心】 -> 模型管理】,点击进入。
  3. 添加新模型:点击右上角的 【增加一个内容模型】
    • 模型名称:给你的模型起一个名字,产品”、“案例”、“招聘信息”等。
    • 表前缀:系统会自动生成,如 dede_ + 你的模型名称拼音,通常无需修改。
    • 字段列表:点击这里的 【管理字段】,为你新创建的模型添加所需的字段,产品模型可能需要:产品规格、市场价格、市场价格、产品图集等。
    • 完成后,保存模型。

注意:只有成功创建了模型并添加了字段,你才能在后续步骤中看到对应的栏目和数据添加入口。


第二步:为模型创建栏目 (Channel)

DedeCMS 的数据是存放在“栏目”下的,你必须为你的自定义模型创建一个专属的栏目。

  1. 进入后台菜单:【核心】 -> 【栏目管理】
  2. 点击 【增加顶级栏目】
  3. 填写栏目信息:
    • 栏目名称:填写栏目名称,产品中心”。
    • 栏目类型:这是最关键的一步!选择 【外部栏目】
    • 绑定到频道主页面不要勾选,这是自定义模型的标准做法。
    • 内容模型:在下拉菜单中,选择你刚刚创建的自定义模型(你创建的“产品”模型)。
    • 其他选项
      • 栏目列表选项:选择“使用列表”。
      • 文章命名规则:可以设置文章的 URL 命名格式,如 {typedir}/{aid}.html
      • 列表命名规则:设置栏目列表页的 URL 命名格式,如 {typedir}/list_{page}.html
    • 填写完毕后,点击 【确定】 保存。

你的自定义模型就有了“家”。


第三步:在栏目中添加数据

这是核心步骤,我们将在上一步创建的栏目中添加具体的数据内容。

dede 自定义模型添加数据
(图片来源网络,侵删)
  1. 进入后台菜单:【核心】 -> 发布】 ->

  2. 你会看到一个内容发布页面,页面顶部的 “选择栏目” 下拉菜单中,选择你刚才创建的那个自定义栏目(产品中心”)。

    • 输入你的文章标题,新款智能手机发布”。
    • TAG标签:输入相关的关键词,用逗号隔开。
    • 缩略图:上传一张代表该内容的图片。
    • 作者来源:填写作者或来源信息。
    • 发布栏目:确认是你选择的那个自定义栏目。
    • 内容简介的简要描述。
    • 编辑器中填写详细内容。
  3. 填写自定义字段

    dede 自定义模型添加数据
    (图片来源网络,侵删)
    • 向下滚动页面,你会看到一大块区域,标题是 “自定义字段”
    • 这里会列出你在 第一步 中为该模型创建的所有字段。
    • 根据字段类型填写数据:
      • 单行文本:直接输入文本。
      • 多行文本:输入多行文本。
      • 数字:输入数字。
      • 下拉菜单:从下拉列表中选择一个值。
      • 编辑器:会带有一个小的编辑器,用于输入格式化的文本。
      • 图片:点击“上传”或“选择”按钮,上传一张图片。
      • 图片集:点击“增加一个上传”,可以上传多张图片,并设置每张图片的说明。
      • 附件:上传文件,如 PDF, DOC, ZIP 等。
      • 联动类型:通常用于地区选择,如“省/市/区”。
  4. 设置选项

    • 内容状态:通常选择“审核通过”。
    • 推荐位:如果需要,可以将此内容推荐到首页或其他推荐位置。
    • 顶客/头条/热门等:根据需要勾选。
    • 点击页面底部的 【发布】 按钮。

第四步:前台页面调用 (可选但重要)

数据添加成功后,你可能希望在前台网站上显示出来,这需要修改模板文件。

调用自定义字段

在列表页模板 (list_article.htm) 或内容页模板 (article_article.htm) 中,使用 DedeCMS 的标签来调用自定义字段。

语法:{dede:field.字段名/}

如果你的自定义字段是 price (价格),那么在模板中就可以这样调用:

<p>价格:{dede:field.price/} 元</p>

如果是图片集字段 piclist,需要使用循环标签:

{dede:field.piclist runphp='yes'}
    $dtp = new DedeTagParse();
    $dtp->LoadSource(@me);
    $GLOBALS['autoindex'] = 0;
    $revalue = '';
    foreach($dtp->CTags as $ctag){
        if($ctag->GetName()=='img'){
            $revalue .= "<img src='".$ctag->GetAtt('src')."' alt='".$ctag->GetAtt('alt')."' />";
        }
        $GLOBALS['autoindex']++;
    }
    @me = $revalue;
{/dede:field.piclist}

调用栏目下的所有内容

在列表页模板中,使用标准的列表调用标签,并指定模型ID。

{dede:list pagesize='10' titlelen='50' addfields='price,spec'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
        <p>价格:[field:price/] 元</p>
        <p>规格:[field:spec/]</p>
    </li>
{/dede:list}
<div class="dede_pages">
    <ul>{dede:pagelist listsize='4'/}</ul>
</div>
  • addfields='price,spec':这个属性非常重要!它告诉标签在列表循环中需要包含哪些自定义字段,多个字段用英文逗号隔开。
  • pagesize='10':每页显示10条数据。

常见问题与解决方案

  • 问题1:添加内容时,看不到自定义字段。
    • 原因:最常见的原因是,你在添加内容时,选择的栏目没有绑定你创建的自定义模型,请回到 第二步,检查栏目的“内容模型”设置是否正确。
  • 问题2:前台页面无法显示自定义字段的内容。
    • 原因1:模板中没有使用正确的调用标签 {dede:field.字段名/}
    • 原因2:在使用 {dede:list} 标签时,忘记添加 addfields 属性来指定需要调用的自定义字段。
  • 问题3:自定义字段为空,但数据库里有数据。
    • 原因:通常是模板标签写错了,或者字段名在数据库中与模板中调用的不一致,请仔细核对。

希望这个详细的教程能帮助你顺利地在 DedeCMS 中为自定义模型添加数据!如果在操作中遇到任何具体问题,可以随时提问。

-- 展开阅读全文 --
头像
float和double区别究竟在哪儿?
« 上一篇 01-12
dede搜索页如何自定义字段调用?
下一篇 » 01-12

相关文章

取消
微信二维码
支付宝二维码

目录[+]