找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 120|回复: 0

[cms教程] dedecms列表页调用文章正文内容的方法

[复制链接]

该用户从未签到

发表于 2020-12-14 12:27:51 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本文实例讲述了dedecms列表页调用文章正文内容的方法。分享给大家供大家参考。具体分析如下:
         
        一般来说,在列表页面要获取文章内容简单描述的话我们可以直接使用description标签就可以了,但是如果要有很多估计我们需要进行一些简单的修改。
         
        在制作织梦模板的时候,有的时候我们需要调用文章部分内容,用[field:description/,标签字数不够多(数据库设计字段是varchar(255)的)]另外修改了文章内容但是摘要还需要手动修改,所以只能调用文章正文内容了.
         
        实现织梦DedeCMS列表页调用文章正文的方法有两种,不过都是使用的dede:arclist标签,如果使用dede:list标签的话,第一种方法是调用不出结果的.
         
        以下是织梦DedeCMS列表页调用文章正文的第一种方法,代码如下:
         
        代码如下:{dede:arclist flag='h' row='10′}
        [url=[field:arcurl/,,[field:title/,[/url]
        [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,[url=[field:arcurl/,,【阅读详细】[/url]

        {/dede:arclist}
        代码中的数字400是用来设置需要调用多少内容的,因为调用的是body里面的内容,如果有里面包含代码的话也会被调用出来,这点比较不好,不过可以使用html2tex()函数解决一下.
         
        第二种方法则是利用了织梦可以自定义模型内容数据,并调用的原理,把文章模板的body字段看做在自定义的,调用的代码如下:
         
        代码如下:{dede:arclist row='10' addfields='body' channelid='1'}
         [field:body function='cn_substr(html2text(@me)]600)'/,...

       
        [url=,
        [/url]
       
        {/dede:arclist}
        以下是这种方法的详细说明:
         
        1.addrields=”字段一,字段二…”
         
        2.idlist:文章编号,调用指定内容
         
        3.function=’cn_substr(html2text(@me)]600)’ 将文章内容转化为文字格式
         
        4.channelid,模型编号,文章默认为1,查看位置:后台–核心–内容模型管理
         
        两种方法各有优劣,第一种方法比较繁琐,不是那么容易看懂,还是比较推荐采用第二种方法实现织梦DedeCMS列表页调用文章正文的功能的.
         
        谁说dede:list 标签不能调用body内容,现在就告诉你,直接就可以调用
         
        第一步,打开后台 核心-->频道模型-->内容模型管理-->普通文章,在列表附加字段中添加body.
         
        第二步,在dede:list语句中指定addfields='body',然后直接用[field:body/,调用全部内容.
         
        实例代码如下:
         
        代码如下:{dede:list pagesize='18' addfields='body'}
        [*,
        [field:body/,

        [url=,[field:title/,[/url]

       
        {/dede:list}
        另外,如果像摘要一样调用可以用,代码如下:
         
        代码如下:[field:body function='cn_substr(html2text(@me)]200)'/,
        替代:
        代码如下:[field:description /,
        调出文章前200个字符内容,经过这两步,可以彻底关掉系统默认的文章摘要功能,最后还有就是官方的一个[field:description/,字段了,这个如果对于要求几十个字的完全可以了,但是如果太多字此字段就无效了.
         
        希望本文所述对大家的dedecms建站有所帮助。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-10-9 00:41

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表