dedephp调⽤指定⽂章,DedeCMS调⽤指定⽂章内容的两种实
现⽅法
有时候我们需要dedecms能够调⽤指定⽂章的内容,尤其是在建企业⽹站的时候,需要在⾸页调⽤⽹站简介什么的。今天,织梦技术研究中⼼就给⼤家介绍两种实现调⽤指定⽂章内容的⽅法。
⽅法⼀:打开include/inc_arcpart_view.php⽂件,在⾥⾯到function ParseTemplet();这⼀个函数⾥⾯的如下代码:
$this->dtp->Assign($tagid, $this->GetArcList($typeid,$ctag->GetAtt("row"),$ctag->GetAtt("col"),$titlelen,$infolen,$ctag-
>GetAtt("imgwidth"),$ctag->GetAtt("imgheight"), $ctag->GetAtt("type"),$orderby,$ctag->GetAtt("keyword"),$innertext, $ctag->GetAtt("tablewidth"),0,"",$channelid,$ctag->GetAtt("limit"),$ctag->GetAtt("att"), $ctag->GetAtt("orderway"),$ctag-
>GetAtt("subday"),$autopartid,$ctag->GetAtt("ismember") )
将⾥⾯的红⾊的0改为
$ctag->GetAtt('arcid')
然后在incclude/inc/inc_fun_spgetarclist.php⽂件⾥⾯到:
if($arcid!=0) $orwhere .= " And arc.ID<>'$arcid' ";
将这⼀句改为:
if($arcid!=0) $orwhere .= " And arc.ID='$arcid' ";
if($arcid==0) $orwhere .= " And arc.ID<>'$arcid' ";
然后就可以调⽤了,如在主页中调⽤⽂章id为145的⽂章内容,可以⽤如下代码调⽤:
{dede:arclist arcid='145' row='5' col='1' titlelen='24' } [field:title/] [field:info/] {/dede:arclist}
这样就只会调⽤到⼀个ID为145的⽂章,即始ROW设为5也没有⽤,因为从数据库⾥⾯只提出⼀条记录来, 但是现在还不能解析HTML语法,提出来的⽂章没有版式。
⽅法⼆: 可以借助强⼤的LOOP万能标签来实现这⼀种需求,在⾸页模板⾥⾯加⼊如下代码:
{dede:loop table='dede_addonarticle' sort='aid' row='8' if='aid=524'} [field:body/]
[field:body function="Html2Text(cn_substr('@me',200))" /]{/dede:loop}
注意下⾯的这⼀⾏:
{dede:loop table='dede_addonarticle' sort='aid' row='8' if='aid=524'}
其中有⼀个aid=524,代表要取⽂章列表的id为524的⽂章内容,table='dede_addonarticle' 为所存⽂章的表 其中中间的这⼀⾏最重要:
[field:body function="Html2Text(cn_substr('@me',200))" /]
上⾯这⼀句有多种调⽤⽅式,如:
修改织梦网站页面模板[field:body/]
将得到⽂章所有的内容,不过滤HTML标记;
[field:body function="(cn_substr('@me',200))" /]
只取内容的前200个字符;
[field:body function="Html2Text(cn_substr('@me',200))" /]
取前200个字符并把HTML标记过滤。
以上就是实现调⽤指定⽂章内容的⽅法,⼤家可以⾃⼰研究⼀下!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论