织梦专题页节点文档调用自定义模型字段方法
修改完DedeCMS专题页节点文章列表样式之后,又遇到一个难题,因为专题页的节点文章发布在自定义模型里,我要在列表中把我自定义的字段也调用出来,DedeCMS默认是不显示的,需要实现这个功能就要进行二次开发了,搜索了好久,整理出一个完美的解决方法:
一、修改专题页新增模板文件,打开/dede/templets/spec_add.htm,查找代码(大概在第354行):
<input name="rownum<?php echo $i?>" type="text" id="rownum<?php echo $i?>" value="10" size="3">
在下面添加代码(value 的值就是自定义模型频道ID):
频道ID:<input name="channel<?php echo $i?>" type="text" id="channel<?php echo $i?>" value="17" size="3">
查找代码(大概在第364行):
<tr>
<td>节点容器模板:</td>
<td colspan="2"><input name="notetemplet<?php echo $i?>" type="text" id="notetemplet<?php echo $i?>" value="system/channel_spec_note.htm" style="width:300">
<input type="button" name="selno<?php echo $i?>" value="浏览..." style="width:70" onClick="SelectTemplets('form1.notetemplet<?php echo $i?>');"></td>
</tr>
在下面添加代码:
<tr>
<td>扩展字段:</td>
<td colspan="2">
<input id="addfields<?php echo $i?>" style="width: 663px;" type="text" name="addfields<?php echo $i?>" value="<?php echo $addfields?>"/>
</td>
</tr>
二、修改专题页编辑模板文件,打开/dede/templets/ spec_edit.htm,查找代码(大概在第424行):
<input name="rownum<?php echo $i?>" type="text" id="rownum<?php echo $i?>" value="<?php echo $rownum?>" size="3">
在下面添加代码(value 的值就是自定义模型频道ID):
频道ID:<input name="channel<?php echo $i?>" type="text" id="channel<?php echo $i?>" value="17" size="3">
查找代码(大概在第428行):
<tr>
<td colspan="2">单条记录的模板:<br/>
<textarea name="listtmp<?php echo $i?>" rows="3" id="listtmp<?php echo $i?>" style="width:60%"><?php echo $temp?></textarea></td>
</tr>
在下面添加代码:
<tr>
<td>扩展字段:</td>
<td colspan="2">
<input id="addfields<?php echo $i?>" style="width: 663px;" type="text" name="addfields<?php echo $i?>" value="<?php echo $addfields?>"/>
</td>
</tr>
查找代码(大概在第369行):
$noteid = $ctag->GetAtt('noteid'); 在下面添加代码: $channel = $ctag->GetAtt('channel'); $addfields = $ctag->GetAtt('addfields'); $notetemplet = $ctag->GetAtt('notetemplet');
三、修改专题页新增/编辑核心文件,分别打开 dede/spec_add.php和dede/spec_edit.php,查找代码(spec_add.php 文件中大概在第114行,spec_edit.php 文件中大概在第170行 ):
$listtmp = trim(${'listtmp'.$i});
在下面添加代码:
$addfields = trim(${'addfields'.$i}); $notetemplet = trim(${'notetemplet'.$i}); $infolen = trim(${'infolen'.$i}); $channel = trim(${'channel'.$i});
查找代码(spec_add.php 文件中大概在第148行,spec_edit.php 文件中大概在第238行 ):
$notelist .= "
将这段代码修改为:
$notelist .= "{dede:specnote notetemplet=\\'$notetemplet\\' imgheight=\\'$imgheight\\' imgwidth=\\'$imgwidth\\' infolen=\\'$infolen\\' titlelen=\\'$titlelen\\' col=\\'$col\\' idlist=\\'$okids\\' name=\\'$notename\\' noteid=\\'$noteid\\' isauto=\'$isauto\' rownum=\\'$rownum\\' keywords=\\'$keywords\\' typeid=\\'$typeid\\' addfields=\\'$addfields\\'} $listtmp {/dede:specnote}\r\n";
都修改完毕后保存上传覆盖, 添加和编辑两个模版和两个PHP处理文件都要修改,不要忘了,完成后,专题页的文档节点页面会新增自定义模型id和字段的输入框:
然后在调用标签里把自己想要调用的自定义字段写进去就可以了。
- 上一篇:织梦首页和列表页动态调用点击次数方法
- 下一篇:织梦去面包屑导航中最后一个连接符
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ(984818011)进行交流。
- 织梦dede首页列表页获取文章对应的tag标签
- 织梦dede导航栏目顶级和二级判断二级输出不同url
- 织梦dede标签array runphp静态生成乱码BUG解决方法
- 织梦dede如何禁止会员发布文章内容带超链接
- 织梦ajax跨域提交自定义表单和跨域验证码问题
- 织梦CMS MIP文章内容页图片适配百度MIP规范
- 织梦CMS时间格式实现XX秒前、XX分钟前、XX天前
- 织梦DedeCMS更新系统缓存增加清理沉余缓存的功能
- 织梦CMS让channelartlist标签支持currentstyle属性的
- 织梦dede自带编辑器替换百度ueditor编辑器
- 织梦DEDECMS整站动态化或整站静态化设置方法
- 织梦dede 模板路径templets目录都有什么?