DEDECMS实现栏目图片介绍及简介

dedecms是一个很好的开源cms,作为一个cms来说,功能已经比较完善。但是用来做一些特定的网站,还需要一定的开发工作。

问题(也是很多人在群里问我的问题),在dedecms里如何实现带有图片介绍和简介的栏目信息,又不想大改程序。其实步骤很简单,下面以dedecms4.0作例子。

基本思想:我们需要利用栏目表dede_arctype(前缀dede根据你的安装设置而改变)的description(栏目简介)这个字段,然后利用dedecms提供的runphp接口,用简单的php编程实现。

步骤:

1、编辑栏目信息,在高级选项中,填入栏目描述,例如:lmlogo.jpg|||这是一个游戏栏目。注意这段描述,实际上是两部分内容,通过“|||”分开,前面的是栏目的图片信息,后面是栏目的简介。

2、dedecms在调用栏目的信息的时候,默认不调用description字段,因此我们需要修改源代码,让调用支持description字段。修改include/inc_arcpart_view.php文件,找到function GetOneType()函数,原文件为: 

$row = $this->dsql->GetOne("Select ID,typedir,isdefault,defaultname,ispart,namerule2,typename,moresite,siterefer,siteurl,sitepath From #@__arctype where ID='$typeid'");

修改为:

$row = $this->dsql->GetOne("Select ID,typedir,isdefault,defaultname,ispart,namerule2,typename,moresite,siterefer,siteurl,sitepath,description From #@__arctype where ID='$typeid'");

修改之后,就可以在模板中通过[field:description/]调用数据库中description字段的值。

3、接下来要实现图片信息和文字信息的分离,使用dedecms提供的runphp='yes'来实现简单编程。代码如下:

以下例子,只适合于类似“lmlogo.jpg|||这是一个游戏栏目”这样的栏目描述。

分离图片信息:

 [field:description runphp='yes']
 $findme="|||";
 $mystring1=@me;
 $pos1 = stripos($mystring1, $findme);
 if($pos1>0) {
 @me=substr($mystring1,0,$pos1);}
 else{@me="";}
 [/field:description]

分离栏目简介:

  [field:description runphp='yes']
 $findme="|||";
 $mystring1=@me;
 $pos1 = stripos($mystring1, $findme);
 if($pos1>0) {
 @me=substr($mystring1,$pos1+3,strlen($mystring1));}
 else{@me="";}
 [/field:description]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值