{dede:field name='click'/}
。DedeCMS文章列表页及内容页模板调用文章评论数的标签
在DedeCMS系统中,文章列表页及内容页模板调用文章评论数是一项常见需求,以下是详细的调用方法及其逻辑说明:
列表页调用文章评论数的方法
在DedeCMS中,要在列表页调用每篇文章的评论数,可以使用dede:arclist
标签,并结合自定义函数来实现,具体操作步骤如下:
1、打开include/extend.func.php文件:在该文件末尾添加以下代码:
function getCommentsCount($aid) {
global $dsql;
$row = $dsql>GetOne("SELECT count FROM#@__pinglun
WHERE aid='$aid'");
return $row['count'];
}
2、在列表页模板中使用dede:arclist标签:在需要显示评论数的地方,使用以下代码:
{dede:arclist row='10' addfields='body,postnum' channelid='1'} <li> <h2><a href="[field:arcurl/]">[field:title/]</a></h2> <p>[field:description/]</p> <span class="commentscount">评论数:[field:postnum function='getCommentsCount(@me)'/]</span> </li> {/dede:arclist}
addfields='postnum'
用于获取文章的评论数,function='getCommentsCount(@me)'
用于调用自定义函数getCommentsCount
来获取具体的评论数。
页调用文章评论数的方法
页调用文章评论数,可以使用dede:field
标签直接获取评论数,具体操作步骤如下:
1、页模板中使用dede:field标签:在需要显示评论数的地方,使用以下代码:
<div class="commentscount">评论数:{dede:field name='postnum'/}</div>
name='postnum'
表示获取文章的评论数字段。
相关问答FAQs
问题一:如何在DedeCMS中自定义模型并调用其字段?
解答:
在DedeCMS中,自定义模型并调用其字段的步骤如下:
1、创建独立模型:进入后台,核心 > 频道模型 > 内容模型管理 > 普通文章 > 更改,设置好模型的字段,如标题、作者等。
2、设置前台参数:在模型设置页面,勾选“使字段可以在列表的底层模板中获得”,这样自定义字段才能在列表页显示。
3、调用自定义字段:在模板文件中,通过dede:list
或dede:arclist
标签调用自定义字段。
{dede:list pagesize='10' addfields='title,description,postnum' channelid='1'} <li> <h2><a href="[field:arcurl/]">[field:title/]</a></h2> <p>[field:description/]</p> <span class="commentscount">评论数:[field:postnum/]</span> </li> {/dede:list}
4、注意事项:如果独立模型的ID不是负数,将无法在列表页调出数据,这是一个常见的问题。
问题二:如何在DedeCMS中调用文章的正文内容?
解答:
在DedeCMS中,调用文章的正文内容可以通过以下几种方法实现:
1、使用dede:arclist标签:在列表页模板中使用以下代码:
{dede:arclist row='10' addfields='body' channelid='1'} <li> <h2><a href="[field:arcurl/]">[field:title/]</a></h2> <p>[field:body/]</p> </li> {/dede:arclist}
2、使用dede:list标签页模板中使用以下代码:
{dede:list pagesize='10' addfields='body' channelid='1'} <li> <p>[field:body/]</p> </li> {/dede:list}
3、使用自定义函数:如果需要对文章内容进行特殊处理,可以在include/extend.func.php文件中添加自定义函数,然后在标签中调用该函数。
function customBody($aid) {
global $dsql;
$row = $dsql>GetOne("SELECT body FROM#@__addonarticle
WHERE aid='$aid'");
return $row['body'];
}
在模板中使用:
{dede:arclist row='10' addfields='body' channelid='1'} <li> <h2><a href="[field:arcurl/]">[field:title/]</a></h2> <p>[field:body function='customBody(@me)'/]</p> </li> {/dede:arclist}
4、注意事项:如果文章内容包含HTML标签,可以使用cn_substr(strip_tags(@me), 400)
函数来截取纯文本内容。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1227866.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复