欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

织梦dedecms — 添加自定义字段

发布文章,发布图片集 往往会出现字段不够用,比如汽车的 价格 发动机型号 车型等等。。。


普通文章添加字段:


第一步)进入织梦后台 - 核心 - 内容模型管理 - 点击普通文章 - 左上角字段管理 - 添加新字段




直说重点:

选择已经固化在发布表单中字段

原因:有些时候我们对这些表单有比较复杂的处理,例如我想增加一个select下拉表单,而我又希望下拉选项的内容是来自数据库某个表,个时候使用“自动表单”就无法处理了


使字段可以在列表底层模板中获得,这个选项感觉有点儿用不到。


剩下的根据自己的需求添加即可


第二步)字段已经有了,那么需要找到 4个文件 

1. dede/article_add.php 

$query = "INSERT INTO `{$addtable}`(aid,typeid,redirecturl,templet,userip,body{$inadd_f}) Values('$arcID','$typeid','$redirecturl','$templet','$useip','$body'{$inadd_v})";


新生成的字段名称 添加在这句里, 约216行


2. dede/article_edit.php 


$iquery = "UPDATE `$addtable` SET typeid='$typeid',body='$body'{$inadd_f},redirecturl='$redirecturl',templet='$templet',userip='$useip' WHERE aid='$id'";

新生成的字段名称 添加在这句里, 约216行


在35行加入代码:


  1. $add_query="SELECT * FROM `#@__addonarticle` WHERE aid = '$aid'";
  2. $add_arcRow = $dsql->GetOne($add_query);

原因:打开修改页面时候字段值无法传递过来,无法显示,所以查询附加表所有字段,来调用。




3. dede/templets/article_add.htm 需要在添加页面中 显示新字段的输入框

基本的HTML语法,根据原模板里的格式生搬硬套即可


<input name="新字段名称" type="类型" id="新字段名称" style="" value="" />



4. dede/templets/article_edit.htm


<input name="新字段名称" type="类型" id="新字段名称" style="" value="<?php echo $add_arcRow["新字段名称"]?>"/>


走到这一步,基本完成了 一大半了。


第三步) 在首页,列表页,内容页调用


首页,列表页

{dede:arclist addfields='新字段名称,字段名称'channelid'1'}

[field:字段名称/]

{/dede:arclist}

{dede:list addfields='新字段名称,字段名称'channelid'1'}

[field:字段名称/]

{/dede:list}

内容页

直接调用{dede:field.新字段名称/}


在后台



在红色部分,添加上新增的字段名称。


这就完成了。


图片集方法同上! 只不过4个文件分别为:album_add.php - album_edit.php - album_edit.htm - album_add.htm

微小变化

channelid='2'  - 附加表:#@__addonimages 


来自  https://blog.csdn.net/u011737066/article/details/46806537

普通分类: