dedecms列表页如何调用子栏目列表以及子栏目的名称
其实可以不用dede自带的评论模块,因为会有漏洞,易被黑客利用。有很多免费的文章评论系统比如使用《多说》,几行代码就可以搞定。
下面是dede评论提交框
<a name='postform'></a><div class="mt1">
<dl class="pbox">
<dt>
<strong>发表评论</strong>
<span class="more"></span>
</dt>
<dd>
<div class="dede_comment_post">
<form action="#" method="post" name="feedback">
<input type="hidden" name="dopost" value="send" />
<input type="hidden" name="comtype" value="comments">
<input type="hidden" name="aid" value="{dede:field name="id"/}" />
<input type="hidden" name="fid" id='feedbackfid' value="0" />
<div class="userface" id="_userface">
<a href="/member/indexphp" class="plpic" target="_blank"><img src="/member/templets/images/dfboypng" width="50" height="50" /></a>
</div><script language="javascript" type="text/javascript">CheckLoginface();</script>
<div class="dcmp-stand">
<strong>评价:</strong>
<input type="radio" name="feedbacktype" checked="1" value="feedback" id="dcmp-stand-neu" /><label for="dcmp-stand-neu"><img src="{dede:globalcfg_templets_skin/}/images/cmt-neugif" />中立</label>
<input type="radio" name="feedbacktype" value="good" id="dcmp-stand-good" /><label for="dcmp-stand-good"><img src="{dede:globalcfg_templets_skin/}/images/cmt-goodgif" />好评</label>
<input type="radio" name="feedbacktype" value="bad" id="dcmp-stand-bad" /><label for="dcmp-stand-bad"><img src="{dede:globalcfg_templets_skin/}/images/cmt-badgif" />差评</label>
</div><!-- /dcmp-stand -->
<div class="clr"></div>
<div class="dcmp-mood">
<ul>
<li><input type="radio" name="face" value="1" /><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-1gif" /></li>
<li><input type="radio" name="face" value="2"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-2gif" /></li>
<li><input type="radio" name="face" value="3"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-3gif" /></li>
<li><input type="radio" name="face" value="4"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-4gif" /></li>
<li><input type="radio" name="face" value="5"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-5gif" /></li>
<li><input type="radio" name="face" value="6"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-6gif" /></li>
<li><input type="radio" name="face" value="7"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-7gif" /></li>
<li><input type="radio" name="face" value="8"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-8gif" /></li>
<li><input type="radio" name="face" value="9"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-9gif" /></li>
<li><input type="radio" name="face" value="10"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-10gif" /></li>
<li><input type="radio" name="face" value="11"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-11gif" /></li>
<li><input type="radio" name="face" value="12"/><img src="{dede:globalcfg_templets_skin/}/images/mood/ico-mood-12gif" /></li>
</ul>
</div><!-- /dcmp-mood -->
<div class="dcmp-content">
<textarea cols="60" name="msg" rows="5" class="ipt-txt" style="width:700px"></textarea>
</div><!-- /dcmp-content -->
<div class="dcmp-post"><!--未登陆-->
<div class="dcmp-userinfo" id="_ajax_feedback">
{dede:php}
if($cfg_mb_open=='Y') {
echo '用户名:<input type="text" name="username" size="10" class="ipt-txt" />
密码:<input name="pwd" type="password" id="pwd" size="10" class="ipt-txt" />';
}
{/dede:php}
验证码:<input type='text' name='validate' size='4' class='ipt-txt' style="text-transform:uppercase;"/><img src="{dede:globalcfg_cmsurl /}/include/vdimgckphp" id="validateimg" style="cursor:pointer" onclick="thissrc=thissrc+''" title="点击我更换" alt="点击我更换" />
</div>
{dede:php}
if($cfg_mb_open=='Y') {
echo '<script language="javascript" type="text/javascript">CheckLogin();</script>';
}
{/dede:php}
<div class="dcmp-submit">
<button type="button" class="btn-2" onClick='PostComment()'>发表评论</button>
</div>
</div>
</form>
</div>
</dd>
</dl>
</div><!-- //评论表单区结束 -->
方法:typeid='top' 或者typeid='asdas'任意字母不为空不为数字 写上这一个属性就可以了
{dede:arclist orderby='pubdate' titlelen='28' row='7' typeid='top' }
如果是在文章页 这篇文章又是最新刚发布的,那么最新文章里就会包含这篇文章,想要去除这篇文章,可以加limit{dede:arclistorderby='pubdate' titlelen='28'row='7'typeid='top' limit='1,7'}
当然如果不是最新的文章,再次生成的时候还是有可能和当篇文章重复的
织梦内容管理系统(DedeCms) 以简单、实用、开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统,在经历多年的发展。
目前的版本无论在功能,还是在易用性方面,都有了长足的发展和进步,DedeCms免费版的主要目标用户锁定在个人站长,功能更专注于个人网站或中小型门户的构建,当然也不乏有企业用户和学校等在使用该系统。
dedecms栏目名称的调用方法:
{dede:field name="typename"} 调用当前栏目的名称
{dede:channel type='son' row='5'} <a href="[field:typeurl/]">[field:typename/]</a> {/dede:channel}调用该顶级频道下所有字栏目,row代表调用5条
{dede:type typeid='栏目id'} <a href="[field:typeurl/]">[field:typename/]</a> {/dede:type} 表示调用指定id的栏目,只能调用一个。
{dede:channel type='top'}<a>[field:typename/]</a> {/dede:channel}调用子栏目的当前顶级栏目名称。
调用顶级栏目名称示例代码:
{dede:fieldtitle runphp=’yes’}list($toptype,$sontype)=split(‘/’,@me);@me=$toptype;{/dede:fieldtitle}dedecms也叫织梦内容管理系统,是一款知名的PHP开源网站内容管理系统,以简单、实用、开源而闻名,DedeCms免费版的主要目标用户在个人站长,功能更专注于个人网站或中小型门户的构建,当然也不乏有企业用户和学校等在使用。
一般是这样的代码:
<div class="dede_pages">
<ul class="pagelist">
{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}
</ul>
</div>
你可以在相应的css文件中,默认是:模版文件夹/default/style/pagecss
对应修改一下就可以了。
滑动效果是:dede_pages ul li a:hover
就是链接:a的hover事件。
参考dedecms的帮助文档中的arclist标签
标签名称:arclist
标记简介:织梦常用标记,也称为自由列表标记,其中imglist、imginfolist、specart、coolart、autolist都是由该标记所定义的不同属性延伸出来的别名标记。
功能说明:获取指定文档列表
适用范围:全局使用
基本语法:
{dede:arclist flag='h' typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype='' orderby='' keyword='' limit='0,1'}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:arclist}
参数说明:
col='' 分多少列显示(默认为单列),53版中本属性可以通过多种方式进行多行显示
如果col='1'要多列显示的可用div+css实现
以下为通过div+css实现多列的示例:
<style type=text/css>
div{width:400px;float:left;}
</style>
{dede:arclist row='10' titlelen='24' orderby='pubdate' idlist='' col='2'}
•[field:textlink/]([field:pubdate function=MyDate('m-d',@me)/])<br/>
{/dede:arclist}
当col>1将使用原来的table多列方式显示
row='10' 返回文档列表总数
typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在首页模板中允许用","分开表示多个栏目;
getall='1' 在没有指定这属性的情况下,在栏目页、文章页模板,不会获取以","分开的多个栏目的下级子类
titlelen = '30' 标题长度 等同于titlelength
infolen='160' 表示内容简介长度 等同于infolength
imgwidth='120' 缩略图宽度
imgheight='90' 缩略图高度
listtype='all' 栏目类型 image含有缩略图 commend推荐
orderby='sortrank' 文档排序方式
§ orderby='hot' 或 orderby='click' 表示按点击数排列
§ orderby='sortrank' 或 orderby='pubdate' 按出版时间排列
§ orderby='near'
§ orderby=='lastpost' 按最后评论时间
§ orderby=='scores' 按得分排序
§ orderby='id' 按文章ID排序
§ orderby='rand' 随机获得指定条件的文档列表
keyword='' 含有指定关键字的文档列表,多个关键字用","分
innertext = '' 单条记录样式
aid='' 指定文档ID
idlist ='' 提取特定文档(文档ID)
channelid 频道ID
limit='起始ID,记录数' (起始ID从0开始)表示限定的记录范围(如:limit='1,2' 表示从ID为1的记录开始,取2条记录)
flag = 'h' 自定义属性值:头条[h]推荐[c][p]幻灯[f]滚动[s]跳转[j]图文[a]加粗[b]
noflag = '' 同flag,但这里是表示不包含这些属性
orderway='desc' 值为 desc 或 asc ,指定排序方式是降序还是顺向排序,默认为降序
subday='天数' 表示在多少天以内的文档
用arclist调用于附加表字段的方法:
要获取附加表内容,必须符合两个条件
1、指定 channelid 属性
2、指定要获得的字段 addfields='字段1,字段'
如:
{dede:arclist addfields='filetype,language,softtype' row='8' channelid='3'}
[field:textlink /] - [field:softtype /]<br />
{/dede:arclist}
底层模板字段:
ID(同 id),typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,
source,litpic(同picname),pubdate,senddate,mid, lastpost,scores,goodpost,badpost,notpost,
description(同infos),filename, image, imglink, fulltitle, textlink, typelink,plusurl, memberurl, templeturl,
stime(pubdate 的"0000-00-00"格式)
其中:
textlink = <a href='arcurl'>title</a>
typelink = <a href='typeurl'>typename</a>
imglink = <a href='arcurl'><img src='picname' border='0' width='imgwidth' height='imgheight'></a>
image = <img src='picname' border='0' width='imgwidth' height='imgheight' alt=’titile’>
字段调用方法:[field:varname/]
如:
{dede:arclist infolen='100'}
[field:textlink/]
<br>
[field:infos/]
<br>
{/dede:arclist}
注:底层模板里的Field实现也是织梦标记的一种形式,因此支持使用PHP语法,Function扩展等功能。
如: 给当天发布的内容加上 (new) 标志
[field:senddate runphp='yes']
$ntime = time();
$oneday = 3600 24;
if(($ntime - @me)<$oneday) @me = "<font color='red'>(new)</font>";
else @me = "";
[/field:senddate]
通常dedecms列表和内容页可以利用系统内置标签[field:description/]来调用,但有时候后台文章摘要需要其它用处,那么这个时候需要调用部分文章正文内容做为摘要显示
步骤和方法
本操作需要用户对DedeCMS系统有较高的了解,如果您感觉自己不太掌握,可以考虑选择官方安全相关服务
步骤和方法
进入后台 核心 -> 频道模型 -> 内容模型管理 -> 普通文章 -> 更改
调用代码:
{dede:list pagesize='10'}
[field:body/]
[field:title/]
{/dede:list}
将内容转化为文字格式并截取字符串[field:body function='cn_substr(html2text(@me),600)'/]
0条评论