在DedeCMS中的文章页面的上一篇下一篇链接处增加文章摘要的方法

所属分类: CMS教程 / dedecms 阅读数: 1367
收藏 0 赞 0 分享

  DedeCMS系统默认的是在文章的上一篇和下一篇的链接只显示标题,但是有时我们希望显示其他信息,比如文章的摘要。

找到arc.archives.class.php文件,在include目录下面,然后查找“GetPreNext”这个函数,将

$query 
= "Select 
arc.id,arc.title,arc.shorttitle,arc.typeid,arc.ismake,arc.senddate,arc.arcrank,arc.money,arc.filename,arc.litpic, 
t.typedir,t.typename,t.namerule,t.namerule2,t.ispart,t.moresite,t.siteurl,t.sitepath 
from `jcode_archives` arc left join jcode_arctype t on arc.typeid=t.id ";

  改成:

$query = "Select 
arc.id,arc.title,arc.shorttitle,arc.typeid,arc.ismake,arc.senddate,arc.arcrank,arc.money,arc.filename,arc.litpic, 
arc.description,t.typedir,t.typename,t.namerule,t.namerule2,t.ispart,t.moresite,t.siteurl,t.sitepath 
from `jcode_archives` arc left join jcode_arctype t on arc.typeid=t.id ";

  比较一下其实现在只是多了arc.description,这就是文章的摘要,也称为文章描述。

  需要注意的是这里的jcode_archives和jcode_arctype中的jcode_是我表结构的前缀,你需要将这个前缀改成你自己的。

  现在我们已经将文章描述从数据库里面取出来了。下一步将描述显示在页面上,显示连接文字的代码本来是这样的,你可以通过查找找到,其实就在上面那段代码的附近:

if(is_array($preRow))
{
$mlink = 
GetFileUrl($preRow['id'],$preRow['typeid'],$preRow['senddate'],$preRow['title'],$preRow['ismake'],$preRow['arcrank'],
$preRow['namerule'],$preRow['typedir'],$preRow['money'],$preRow['filename'],$preRow['moresite'],$preRow['siteurl'],$preRow['sitepath']);
$this->PreNext['pre'] 
= "上一篇:<a href='$mlink'>{$preRow['title']}</a> 
";
$this->PreNext['preimg'] = "<a href='$mlink'><img 
src="{$preRow['litpic']}" alt="{$preRow['title']}"/></a> 
";
}
else
{
$this->PreNext['pre'] = "上一篇:没有了 "; 
$this->PreNext['preimg'] 
="<img src="/templets/default/images/nophoto.jpg" 
alt="对不起,没有上一图集了!"/>";
}
if(is_array($nextRow))
{
$mlink = 
GetFileUrl($nextRow['id'],$nextRow['typeid'],$nextRow['senddate'],$nextRow['title'],$nextRow['ismake'],$nextRow['arcrank'],
$nextRow['namerule'],$nextRow['typedir'],$nextRow['money'],$nextRow['filename'],$nextRow['moresite'],$nextRow['siteurl'],$nextRow['sitepath']);
$this->PreNext['next'] 
= "下一篇:<a href='$mlink'>{$nextRow['title']}</a> 
";
$this->PreNext['nextimg'] = "<a href='$mlink'><img 
src="{$nextRow['litpic']}" alt="{$nextRow['title']}"/></a> 
";
}
else
{
$this->PreNext['next'] = "下一篇:没有了 "; 
$this->PreNext['nextimg'] ="<a href='javascript:void(0)' 
alt=""><img src="/templets/default/images/nophoto.jpg" 
alt="对不起,没有下一图集了!"/></a>";
}
}

  现在为了显示出文章描述,在每一个a标签之后添加一个div div中包含文章描述:

if(is_array($preRow))
{
$mlink = 
GetFileUrl($preRow['id'],$preRow['typeid'],$preRow['senddate'],$preRow['title'],$preRow['ismake'],$preRow['arcrank'],
$preRow['namerule'],$preRow['typedir'],$preRow['money'],$preRow['filename'],$preRow['moresite'],$preRow['siteurl'],$preRow['sitepath']);
$this->PreNext['pre'] 
= "上一篇:<a href='$mlink'>{$preRow['title']}</a> <div>{$preRow['description']}</div> 
";
$this->PreNext['preimg'] = "<a href='$mlink'><img 
src="{$preRow['litpic']}" alt="{$preRow['title']}"/></a> <div>{$preRow['description']}</div> "; 
}
else
{
$this->PreNext['pre'] 
= "上一篇:没有了 ";
$this->PreNext['preimg'] ="<img 
src="/templets/default/images/nophoto.jpg" 
alt="对不起,没有上一图集了!"/>";
}
if(is_array($nextRow))
{
$mlink = 
GetFileUrl($nextRow['id'],$nextRow['typeid'],$nextRow['senddate'],$nextRow['title'],$nextRow['ismake'],$nextRow['arcrank'],
$nextRow['namerule'],$nextRow['typedir'],$nextRow['money'],$nextRow['filename'],$nextRow['moresite'],$nextRow['siteurl'],$nextRow['sitepath']);
$this->PreNext['next'] 
= "下一篇:<a href='$mlink'>{$nextRow['title']}</a> <div>{$preRow['description']}</div> 
";
$this->PreNext['nextimg'] = "<a href='$mlink'><img 
src="{$nextRow['litpic']}" alt="{$nextRow['title']}"/></a> <div>{$preRow['description']}</div> "; 
}
else
{
$this->PreNext['next'] 
= "下一篇:没有了 ";
$this->PreNext['nextimg'] ="<a href='javascript:void(0)' 
alt=""><img src="/templets/default/images/nophoto.jpg" 
alt="对不起,没有下一图集了!"/></a>";
}
}

  这样做的话能显示文章摘要,但是格式可能会很乱,你可以根据需要增加样式。

更多精彩内容其他人还在看

dedecms模板标签如何做判断示例代码

dedecms模板标签是可以做判断的,不过具体要看是哪个标签,有些标签是无法判断的。必须改源文件,下面有个示例,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

DEDE [field:global name=autoindex/] 按序号排列从0从1开始

调试程序用到[field:global name=autoindex/ ] 调用指定频道而频道前面需要加CSS代码,CSS代码正好是按序号排列的,于是修改了一下代码,在此与大家分享下,感兴趣的朋友可以收藏下
收藏 0 赞 0 分享

DEDECMS的20位MD5加密密文解密示例介绍

dedecms的20位md5加密算噶是从32位md5中截取的20位,所以去掉前3位喝最后1位,即可获得16位md5值,即可破解15位md5,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

织梦dedecms登录管理后台总是验证码错误的解决方案

织梦dedecms登录管理后台总是验证码错误在网上找了很多的解决方案,说法有很多种,但最后都无法解决这个问题,感兴趣的朋友可以了解下本文
收藏 0 赞 0 分享

如何让dedecms变成全站动态浏览有利于企业站

教大家如何让dedecms(织梦)变成全站动态浏览,对于企业站很有利哦!有时候dedecms全站的静态反而对于建设企业站不利,具体实现如下,感兴趣的朋友可以参考下,希望对大家有所帮助
收藏 0 赞 0 分享

使用dedecms搭建自己的本地网站(全程图解)

对于初学而言,网站都是在本地调试好后,才通过ftp上传到所买的空间或虚拟主机上,而无论是处于什么情况,学习在本地搭建网站的方法对于初学者是很有用的,下面与大家分享下具体的搭建过程
收藏 0 赞 0 分享

适合企业站的织梦常用标签大全(自己整理)

对于企业站而言其实不用了解那么多标签,在这里分享下自己总结的适合企业站的标签大全,希望大家收藏,以备不时之需
收藏 0 赞 0 分享

DEDECMS最为常用的分页标签及分页样式代码

今天我要分享的是我们最为常用的分页列表及分页样式代码,很多人在这个上面花费的时间较多,其实很简单,如果使用我下面的通用版本就很轻而易举的完工,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

dede标签云如何生成不同颜色、不同大小的tag标签

tag标签做网站的朋友想必知道吧,在本文要为大家讲解的的是dede标签云的使用,如何生成不同颜色、不同大小的tag标签,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

dedecms列表页标题title后加上页数其标题不重复的方法

在列表页的标题后加上页数使列表页的标题不重复这样更利于优化,下面是从搜索整理的解决方法,有类似需求的朋友可以参考下,希望对大家有所帮助
收藏 0 赞 0 分享
查看更多