当前位置:首页 >  站长 >  建站经验 >  正文

织梦CMS二次开发教程 实现图集缩略图的分页样式

 2012-12-24 10:46  来源: 女人说   我来投稿 撤稿纠错

  域名预订/竞价,好“米”不错过

首先织梦CMS系统不用过多介绍了,织梦好,好之梦!

织梦CMS5.7版本里默认自带有三种图集样式,模板名称分别为article_image.htm、article_image_cl.htm(新浪样式)、article_image_new.htm(这个是5.7才有的图文幻灯样式)。最近在做女人说的图集模板时发现dede默认的图集模板无法像文章一样实现分页样式,多次问度娘、谷哥均无果,于是仔细的对织梦的文件研究了一下发现织梦是可以实现这种样式的(如下图)。现将方法分享给大家,这也是织梦论坛上大家最热关注的焦点哦!

 

问题分析:

若要实现这种分页方式,第一在要在分页时把缩略图的地址也调用进去,可是打开分页标签文件一看,没有缩略图数据。那怎么办。我们只能通过二次开发进行新建一个专门用来图集分页调用的一个函数,如果要改动{dede:pagebreak/}的话,在文章的相关分页方式上可能会出现问题。因此建议我们自己新建函数以免出现其他问题。

解决方法:

第一步:打开arc_archives_class.php,在include目录下,在结尾处加上以下代码:

/**
* 获得动态页面图集中图片缩略列表
*
* @access public
* @param int $totalPage 总页数
* @param int $nowPage 当前页数
* @param int $aid 文档id
* @return string
*/
function GetlitpicDM_list($totalPage,$nowPage,$aid)
{
global $dsql,$sqlCt;
$attlist="desclen|80";
FillAttsDefault($ctag->CAttribute->Items,$attlist);
extract($ctag->CAttribute->Items, EXTR_SKIP);
if(!isset($this->addTableRow['imgurls'])) return ;
$revalue = '';
$dtp = new DedeTagParse();
$dtp->LoadSource($this->addTableRow['imgurls']);
$images = array();
if(is_array($dtp->CTags))
{
$pagenum=1;
foreach($dtp->CTags as $ctag1)
{
if($ctag1->GetName()=="img")
{
$litpic.='<LI>
<DIV class=img><A title="'. $ctag1->GetAtt('text').'"
href="view.php?aid='.$aid.'&pageno='.$pagenum.'"><IMG
style="BACKGROUND-IMAGE: url('.$ctag1->GetAtt('ddimg').')"
src="'.$GLOBALS['cfg_templets_skin'].'/tukustyle/blankBg.gif" ></A></DIV><A
href="view.php?aid='.$aid.'&pageno='.$pagenum.'">'.substr($ctag1->GetAtt('text'), 30).'</A> </LI>';

$pagenum++;
}
}
}

return $litpic;
}
/**
* 获得静态页面图集中图片缩略列表
*
* @access public
* @param int $totalPage 总页数
* @param int $nowPage 当前页数
* @param int $aid 文档id
* @return string
*/
function Getlitpic_list($totalPage,$nowPage,$aid)
{
global $dsql,$sqlCt;
$attlist="desclen|80";
FillAttsDefault($ctag->CAttribute->Items,$attlist);
extract($ctag->CAttribute->Items, EXTR_SKIP);
if(!isset($this->addTableRow['imgurls'])) return ;
$revalue = '';
$dtp = new DedeTagParse();
$dtp->LoadSource($this->addTableRow['imgurls']);
$images = array();
if(is_array($dtp->CTags))
{
$pagenum=1;
foreach($dtp->CTags as $ctag1)
{
if($ctag1->GetName()=="img")
{
if($pagenum==1)
{
$litpic.='<LI>
<DIV class=img><A title="'. $ctag1->GetAtt('text').'"
href="'.$this->NameFirst.'.'.$this->ShortName.'"><IMG
style="BACKGROUND-IMAGE: url('.$ctag1->GetAtt('ddimg').')"
src="'.$GLOBALS['cfg_templets_skin'].'/tukustyle/blankBg.gif" ></A></DIV><A
href="'.$this->NameFirst.'_'.$pagenum.'.'.$this->ShortName.'">'.substr($ctag1->GetAtt('text'),0,30).'</A> </LI>';
}
else
{
$litpic.='<LI>
<DIV class=img><A title="'. $ctag1->GetAtt('text').'"
href="'.$this->NameFirst.'_'.$pagenum.'.'.$this->ShortName.'"><IMG
style="BACKGROUND-IMAGE: url('.$ctag1->GetAtt('ddimg').')"
src="'.$GLOBALS['cfg_templets_skin'].'/tukustyle/blankBg.gif" ></A></DIV><A
href="'.$this->NameFirst.'_'.$pagenum.'.'.$this->ShortName.'">'.substr($ctag1->GetAtt('text'),0,30).'</A> </LI>';
}
$pagenum++;
}
}
}

return $litpic;
}

最后就是模板的调用了,这就不再细说了,当然这只是一种方法!本文首发站长网,女人说原创内容,转载请注明出处。喜欢的朋友可以到女人说看一下实际效果

申请创业报道,分享创业好点子。点击此处,共同探讨创业新机遇!

相关文章

  • wordpress文章缩略图插件推荐

    EasyAddThumbnail是一款简单易用的wordpress文章缩略图插件,可在wordpress后台直接搜索安装,安装后无需任何设置,即可为每一篇文章设置缩略图,包括以前的文章。

    标签:
    缩略图
  • 织梦DeDecms无法自动提取缩略图怎么处理

    什么是缩略图?缩略图是指网页上或计算机中图片经压缩方式处理后的小图,其中通常会包含指向完整大小的图片的超链接。一篇完整高质量的文章包含,文章标题、原创内容、图片、缩略图。

  • 解析网站该如何做好搜索引擎结果缩略图优化

    国内搜素引擎结果展现一直都是多元化的发展,各种数据化结构的展现,因此拥有更吸引点击的效果和用户体验,那么今天子凡就分享一个对国内搜索引擎,最简单且行之有效的搜索引擎缩略图优化技巧。说起搜索引擎就永远避不开Google,也是各大搜索引擎的参考或者标准,而对于谷歌的搜索结果来说,没有国内各个搜索引擎的复

    标签:
    缩略图
  • win10任务栏不显示缩略图的解决办法

    Win10系统把鼠标放在任务栏上打开的程序,正常情况下会有一个小窗口上显示程序的缩略图。如果你的任务栏上不显示程序的缩略图,那么就是该功能被关闭了,win10任务栏不显示缩略图怎么办?下面介绍win10任务栏不显示缩略图的解决办法。具体方法如下:1、打开您的本地组策略编辑器;2、用户配置--管理模板

    标签:
    缩略图
  • 做到两点让你轻松在百度搜索结果中出现缩略图

    首先大家仔细看上面的三个图,分别是楚雄信息港、新余信息港、新余城三个网站在搜索结果中出现缩略图

热门排行

信息推荐