织梦DeDeCMS首页列表页调用文章正文内容的方法

2016年8月19日 建站技术 浏览 726 龙8国际 A+

织梦DeDeCMS首页列表页调用文章正文内容的方法

这篇文章主要为大家介绍了dedecms首页列表页调用文章正文内容的方法,可通过SQL查询调用,或者通过自定义模型字段调用,是非常实用的技巧,需要的朋友可以参考下。

在制作织梦dedecms模板的时候,有的时候我们需要调用文章部分内容,用[field:description/]标签字数不够多(数据库设计字段是varchar(255)的),另外如果修改了文章内容,摘要也需要手动修改,很麻烦,所以我们得想个方法来调用文章正文内容,这样省心省力。

实现织梦DedeCMS列表页调用文章正文的方法有两种,不过都是使用的dede:arclist标签,如果使用dede:list标签的话,第一种方法是调用不出结果的.

以下是织梦DedeCMS列表页调用文章正文的第一种方法,代码如下:

{dede:arclist flag='h' row='10′}
<h1><a href='[field:arcurl/]'>[field:title/]</a></h1>
<p>[field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select body From 'dede_addonarticle' where aid='$aid' "); @me = cn_substr(strip_tags("{$row['body']}"),400);[/field:id]<a href='[field:arcurl/]'>【阅读详细】</a></p>
{/dede:arclist}

代码中的数字400是用来设置需要调用多少内容的,因为调用的是body里面的内容,如果有里面包含代码的话也会被调用出来,这点比较不好,不过可以使用html2tex()函数解决一下。

第二种方法则是利用了织梦可以自定义模型内容数据并调用的原理,把文章模板的body字段看做是自定义的,调用的代码如下:

{dede:arclist row='10' addfields='body' channelid='1'}
<p>[field:body function='cn_substr(html2text(@me),600)'/]...</p>
<span class="more">
<a href="[field:arcurl/]" title="[field:fulltitle/]">[详 情]</a>
</span>
{/dede:arclist}

以下是这种方法的详细说明:

1.addfields=”字段一,字段二…”;

2.function='cn_substr(html2text(@me),600)'将文章内容转化为文字格式;

3.channelid,模型编号,文章默认为1,查看位置:后台–核心–内容模型管理。

两种方法各有优劣,第一种方法比较繁琐,不是那么容易看懂,还是比较推荐采用第二种方法实现织梦DedeCMS首页列表页调用文章正文内容的功能的。

谁说dede:list标签不能调用body内容,现在就告诉你,直接就可以调用。

第一步,打开后台:核心-->频道模型-->内容模型管理-->普通文章,在列表附加字段中添加body。

第二步,在dede:list语句中指定addfields='body',然后直接用[field:body/]调用全部内容.

实例代码如下:

{dede:list pagesize='18' addfields='body'}
<li>
<p>[field:body/]</p>
<p><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a></p>
</li>
{/dede:list}

另外,如果像摘要一样调用可以用:

[field:body function='cn_substr(html2text(@me),200)'/]

替代:

[field:description /]

调出文章前200个字符内容,经过这两步,可以彻底关掉系统默认的文章摘要功能,最后还有就是官方的一个[field:description/]字段了,这个如果对于要求几十个字的完全可以了,但是如果需要太多字的话,此字段就无效了。

希望本文所述对大家的dedecms建站有所帮助。

发表评论

:?::razz::sad::evil::!::smile::oops::grin::eek::shock::???::cool::lol::mad::twisted::roll::wink::idea::arrow::neutral::cry::mrgreen: