dedecms的文章和栏目的自定义字段的添加、调用以及完全删除方法_织梦栏目自定义字段和内容自定义字段相同是调取文章标题-程序员宅基地

技术标签: dede  

在制作dedecms模板的过程中经常会用到一些默认dedecms没有的字段,为此以dedecms以及以上的基础上做了一个关于dedecms自定义字段的添加和自定义字段在dedecms模板中的调用方法。 在制作dedecms模板的过程中经常会用到一些默认dedecms没有的字段,如:

这里的价格的调用,dedecms默认是没有这个标签的,那我们如果实现这个价格的调用呢? 在这里我们就需要使用到dedecms模型里的自定义字段了,下面我们以dedecms5.6为例介绍一下dedecms字段的添加和调用方法。(5.3版本后的所以版本的自定义字段的添加和调用相同) 首先我们打开网站后台,点击左侧的“核心”,找到模型管理,这是就可以看到“内容模型管理”的选项卡了。如图:

点击进入“内容模型管理”这是右侧会显示相应的各个模型了,下面我们以文章模型为例讲解自定义字段的添加。

点击右侧的更改小图标进入文章模型的管理页面。 这是我们会看到有“基本设置”和“字段管理”2个选项。我们选择字段管理选项进入。

进入以后我

们会看到有个“添加新字段”的按钮

点击“添加新字段”按钮进入,这时看到的就是添加字段的界面了。 我们以上面讲到的价格字段为例进行一个实例操作的讲解,如下图:

全部添加好后点击确定即可。然后我们进入栏目管理,开始添加内容,打开添加内容页面后我们会看到一个关于价格的内容输入框。

这个就是我们刚刚添加到关于价格的字段。 到这里就已经讲完关于dedecms自定义字段的一个添加过程,对于自定义字段的添加需要活学活用才能将这个功能的潜力完全发挥出来。下面讲一下关于自定义字段在dedecms模板中的的调用。 我们以在首页调用为例: Dedecms模板中默认调用文章标题的标签如下:

{dede:arclist row=6 titlelen=32} <li><a href="[field:arcurl/]">[field:title/]</a></li> {/dede:arclist} 

那么我们调用自定义字段就是在这个基础上加以修改来实现的,我们还是以最开始提到的价格为例,具体标签表现为:

 {dede:arclist row=8 titlelen=32 addfields='jiage' channelid='1'} <li><span>¥[field:jiage/]起</span><a href="[field:arcurl/]">[field:title/]</a></li> {/dede:arclist} 

我们可以看到和第一个标签比较起来有2个不同的地方: 1, 在{dede:arclist row=6 titlelen=32}处多出了addfields='jiage' channelid='1' ,其中addfields='jiage'表示的是指定要获得的字段 addfields='字段1,字段' channelid='1' 表示的是该字段是属于哪个模型的,我们这里是指文章模型里添加到所以channelid=的值为1..。 确定文章模型的的ID是多少,我们里在文章模型管理里找到如下图红色框内的就是模型ID.

2,还多出一个“[field:jiage/]”这个就是我们在添加字段时添加到字段名了。如果你需要在列表页中的{dede:list}里调用自定义字段的话直接添加 “[field:jiage/]” 就可以了,但前提条件是你添加字段的时候必须选择了该项参数。

以上就是关于dedecms自定义字段的添加和调用方法。 另外也可以通过在数据库中添加字段,修改模板文件也能实现的。比如编辑栏目的时候,添加自己想要的栏目的自定义设置,比如添加栏目关键字等等。下面是具体的操作。 第一步:我们要进去mysql 数据库里添加字段,自己命名好!比如我下面添加了一个栏目搜索关键字字段,当然你字段可以自己新建,找到表dede_arctype (这个是栏目模型的数据库表,前面是你安装的表名)然后点击

在点击添加字段

添加字段

到这里数据库字段添加好了。 接下来我们开始做后台。大家写找到后台栏目管理模版! 要更改的 2个 D:\www\dede\templets 模版:catalog_add.htm、catalog_edit.htm 下面就演示一个

然后添加 字段表单,这个一般大家都会的 我添加的代码是:

<tr> <td height="65">栏目搜索关键字:</td> <td> <textarea name="lanmukeywrod" cols="70" rows="4" id="lanmukeywrod"  ><?php echo $myrow['lanmukeywrod']?></textarea> </td> </tr> 

这里注意了。表单的name 和id 要和添加的 mysql表字段一样,不应的话。还要多写个取值代码。一样的话。默认dedecms会自动取的,然后我们做最后一部,把数据添加进去。 大家找到: D:\www\dede\catalog_edit.php 目录可能和大家不一样 也就是后台 里面的 catalog_edit.php,catalog_add.php catalog_edit.php要改的地方有:38行

$upquery = "Update `dede_arctype` set issend='$issend', sortrank='$sortrank', typename='$typename', typedir='$typedir', isdefault='$isdefault', defaultname='$defaultname', issend='$issend', ishidden='$ishidden', channeltype='$channeltype', tempindex='$tempindex', templist='$templist', temparticle='$temparticle', namerule='$namerule', namerule2='$namerule2', ispart='$ispart', corank='$corank', description='$description', keywords='$keywords', moresite='$moresite', `cross`='$cross', `content`='$content', `crossid`='$crossid', `smalltypes`='$smalltypes' $uptopsql where id='$id' "; 

sql语句里面添加我们刚才的 字段进去。也就是下面这个代码

 $upquery = "Update `dede_arctype` set issend='$issend', sortrank='$sortrank', typename='$typename', typedir='$typedir', isdefault='$isdefault', defaultname='$defaultname', issend='$issend', ishidden='$ishidden', channeltype='$channeltype', tempindex='$tempindex', templist='$templist', temparticle='$temparticle', namerule='$namerule', namerule2='$namerule2', ispart='$ispart', corank='$corank', description='$description', keywords='$keywords', moresite='$moresite', `cross`='$cross', `content`='$content', `crossid`='$crossid', `smalltypes`='$smalltypes', `lanmukeywrod`='$lanmukeywrod' $uptopsql where id='$id' "; 

看到了 这个是添加的:`lanmukeywrod`='$lanmukeywrod',这个是更新栏目的。catalog_add.php添加。也是同样的办法。 更改地址有:63行和196行。也是同样办法。添加字段信息 到sql里去 更改后的代码:63行: 

$queryTemplate = "insert into `dede_arctype`(reid,topid,sortrank,typename,typedir,isdefault,defaultname,issend,channeltype, tempindex,templist,temparticle,modname,namerule,namerule2,ispart,corank,description,keywords,moresite,siteurl,sitepath,ishidden,`cross`,`crossid`,`content`,`smalltypes`,`lanmukeywrod`) Values('~reid~','~topid~','~rank~','~typename~','~typedir~','$isdefault','$defaultname','$issend','$channeltype', '$tempindex','$templist','$temparticle','default','$namerule','$namerule2','0','0','','','0','','','0','0','0','','','$lanmukeywrod')"; 

添加了 lanmukeywrod 196行:

$in_query = "insert into `dede_arctype`(reid,topid,sortrank,typename,typedir,isdefault,defaultname,issend,channeltype, tempindex,templist,temparticle,modname,namerule,namerule2, ispart,corank,description,keywords,moresite,siteurl,sitepath,ishidden,`cross`,`crossid`,`content`,`smalltypes`,`lanmukeywrod`) Values('$reid','$topid','$sortrank','$typename','$typedir','$isdefault','$defaultname','$issend','$channeltype', '$tempindex','$templist','$temparticle','default','$namerule','$namerule2', '$ispart','$corank','$description','$keywords','$moresite','$siteurl','$sitepath','$ishidden','$cross','$crossid','$content','$smalltypes','$lanmukeywrod')"; 

下面说下 如何调用到前台

{dede:field.lanmukeywrod/}

在模版里调用这个就可以了,如果大家是别的字段也是一样的调用,后面换成字段名称就可以了。 另外关于自定义字段的完全删除。 在修改网站的时候由于需要增加自定义字段,后来不需要的时候,发现自定义字段无法删除。 于是找到了数据库的dede_addonarticle这个表,看到了自定义字段,删除后,在后台的模型中看到自定义字段还存在,很多朋友都是做到这一步,就不知道如何做了。而且发布文章的时候还有错误,提示自定义字段找不到,而无法发布文章。 原来在dede_channeltype这里面也就是模型配置里面还存在这个自定义字段,进入数据库dede_channeltype表下,然后点击浏览内容,你会发现fieldset字段里面的内容还存在这个自定义字段。 以下为引用的内容:

<field:body itemname='文章内容' type='htmltext' isnull='true' default='' rename='' page='split'/> <field:daima itemname="代码" autofield="1" notsend="1" type="htmltext" isnull="true" islist="0" default="" function="" maxlength="" page=""> </field:daima> 只要我们删除<field:你的字段></field>

这样就可以了,问题解决了。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ghs2599/article/details/48134231

智能推荐

26SkypeForBusiness2015进阶篇--安装并更新CsDatabase-程序员宅基地

文章浏览阅读100次。6.3.6 安装并更新CsDatabase好了,打开Skype For Business命令行管理工具重启下前端服务看看是否能够成功启动,我这里直接重新启动服务器了 转载于:https://blog.51cto.com/winteragain/1703803..._skype for business 2015如何打累计更新

FPGA-HLS简介_hls verilog-程序员宅基地

文章浏览阅读492次。HLS编程环境入门_hls verilog

她在博士阶段破釜沉舟转换研究方向后,发表了32篇SCI-程序员宅基地

文章浏览阅读149次。点上方蓝字计算机视觉联盟获取更多干货在右上方···设为星标★,与你不见不散编辑:Sophia计算机视觉联盟 报道 |公众号CVLianMeng转载于 :中国石油大学她,大..._哈工大博士32篇sci

mysql安装出现应用程序无法正常启动(oxc000007b)的解决方案-程序员宅基地

文章浏览阅读5.1k次。原文:mysql安装出现应用程序无法正常启动(oxc000007b)的解决方案 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/IUNIQUE/article/details/82864859 有时候安装m..._安装mysql时电脑出现此应用无法在你的电脑上运行怎么办

XenApp 5.0 如何管控U盘的映射一-程序员宅基地

文章浏览阅读43次。在XenApp5.0中,策略中并没有提供对USB设备的映射。不过官方提供了如下方案:新建如下键值:OnXenApp32-bitEditionHKEY_LOCAL_MACHINE\Software\Citrix\Policies\DisableUSBDriveRedirectionOnXenApp64-bitEditionHKEY_LOCAL_MACHINE\So..._citrix xenapp 5.0映射客户端优盘

python 计算协方差矩阵_opencv2学习:计算协方差矩阵-程序员宅基地

文章浏览阅读538次。图像的高级处理中,协方差矩阵计算是必不可少的,但opencv关于这方面的资料却相当少。首先,利用matlab计算一下,便于比较:>> data=[1,2,3;10,20,30]data =1 2 310 20 30>> convar=cov(data)convar =40.5000 81.0000 121.500081.0000 162...._图像的协方差矩阵计算过程

随便推点

微信小程序云开发项目实战进阶 - 诗词大全&成语接龙-程序员宅基地

文章浏览阅读698次,点赞2次,收藏3次。1. 小程序功能古诗词大全成语大全成语接龙诗词飞花令诗词分享、收藏诗词接龙唐诗宋词起名字百家姓猜谜语2. 小程序地址https://github.com/caochangkui/miniprogram-project3. 小程序预览:4. 部分截图首页列表页详情页 分享页唐诗宋词成语接龙5. 项目结构.├── README.md├──..._成语接龙云开发数据库

微软特权访问管理-程序员宅基地

文章浏览阅读452次。2018-2022是私有云混合云在中国最火热的时代,私有云将在中国从摸索走向成熟阶段,随着云技术的火热,下一个企业必须要思考的将是信息安全的问题,现在企业都在导入云计算技术,建置更多的信息应用系统以从中获取信息化带来的价值。那么随着带来的一个隐患就是,管理员要管理的基础架构和应用系统数量越来越多,这时候管理员账户就变的很重要了,如何保证管理员账户能够安全,如果保证管理员账户的..._-membertimetolive

阿里巴巴 Apache Dubbo 布道师谈 Service Mesh-程序员宅基地

文章浏览阅读90次。“Service Mesh要解决分布式架构下如何集成的问题,同时它又是云原生的核心,Dubbo Mesh正在做这方面的实践。--- 阿里巴巴Apache Dubbo布道师 吕仁琦”本文整理自2018杭州云栖大会首届开发者生态峰会吕仁琦的分享。- 公众号后台发送“首届开发者生态峰会”,获取峰会PPT。| Service Mesh 和 Du..._apache dubbo 与 alibaba dubobo site:blog.csdn.net

偏微分方程数值解的matlab程序,偏微分方程数值解法MATLAB源码-程序员宅基地

文章浏览阅读1.3k次。《偏微分方程数值解法MATLAB源码》由会员分享,可在线阅读,更多相关《偏微分方程数值解法MATLAB源码(27页珍藏版)》请在人人文库网上搜索。1、源码【更新完毕】偏微分方程数值解法的MATLAB原创 说明:由于偏微分的程序都比较长,比其他的算法稍复杂一些,所以另开一贴,专门上传偏微分的程序 谢谢大家的支持! 其他的数值算法见:./Announce/Announce.asp?BoardID=20..._在matlab中使用crank-nicolson 方法求解偏微分方程

7、Flink 流计算处理和批处理平台_批处理和流计算-程序员宅基地

文章浏览阅读6.9k次,点赞5次,收藏17次。一、Flink 基本概念Flink 是一个批处理和流处理结合的统一计算框架,其核心是一个提供了数据分发以及并行化计算的流数据处理引擎。它的最大亮点是流处理,是业界最顶级的开源流处理引擎。Flink 与 Storm 类似,属于事件驱动型实时流系统。所谓说事件驱动型指的就是一个应用提交之后,除非明确的指定停止,否则,该业务会一直持续的运行,它的执行条件就是触发了某一个事件,比如在淘宝中,我..._批处理和流计算

硬盘分区表错误与解决办法_调整分区容量时出现错误-程序员宅基地

文章浏览阅读3.6k次。在Windows2000/XP中,我们一般会用到故障恢复控制台集成的一些增强命令,比如Fixmbr用于修复和替换指定驱动器的主引导记录、Fixboot用于修复知道驱动器的引导扇区、Diskpart能够增加或者删除硬盘中的分区、Expand可以从指定的CAB源文件中提取出丢失的文件、Listsvc可以创建一个服务列表并显示出服务当前的启动状态、Disable和Enable分别用于禁止和允许一项服务或者硬件设备等等,而且输入“help”命令可以查看到所有的控制命令以及命令的详细解释。......_调整分区容量时出现错误

推荐文章

热门文章

相关标签