織夢(mèng)CMS5.7版本里默認(rèn)自帶有三種圖集樣式,模板名稱分別為article_image.htm、article_image_cl.htm(新浪樣式)、article_image_new.htm(這個(gè)是5.7才有的圖文幻燈樣式)。最近在做女人說(shuō)的圖集模板時(shí)發(fā)現(xiàn)dede默認(rèn)的圖集模板無(wú)法像文章一樣實(shí)現(xiàn)分頁(yè)樣式,多次問(wèn)度娘、谷哥均無(wú)果,于是仔細(xì)的對(duì)織夢(mèng)的文件研究了一下發(fā)現(xiàn)織夢(mèng)是可以實(shí)現(xiàn)這種樣式的(如下圖)?,F(xiàn)將方法分享給大家,這也是織夢(mèng)論壇上大家最熱關(guān)注的焦點(diǎn)哦!
問(wèn)題分析:
若要實(shí)現(xiàn)這種分頁(yè)方式,第一在要在分頁(yè)時(shí)把縮略圖的地址也調(diào)用進(jìn)去,可是打開(kāi)分頁(yè)標(biāo)簽文件一看,沒(méi)有縮略圖數(shù)據(jù)。那怎么辦。我們只能通過(guò)二次開(kāi)發(fā)進(jìn)行新建一個(gè)專門用來(lái)圖集分頁(yè)調(diào)用的一個(gè)函數(shù),如果要改動(dòng){dede:pagebreak/}的話,在文章的相關(guān)分頁(yè)方式上可能會(huì)出現(xiàn)問(wèn)題。因此建議我們自己新建函數(shù)以免出現(xiàn)其他問(wèn)題。
解決方法:
第一步:打開(kāi)arc_archives_class.php,在include目錄下,在結(jié)尾處加上以下代碼:
/**
*獲得動(dòng)態(tài)頁(yè)面圖集中圖片縮略列表
*
*@accesspublic
*@paramint$totalPage總頁(yè)數(shù)
*@paramint$nowPage當(dāng)前頁(yè)數(shù)
*@paramint$aid文檔id
*@returnstring
*/
functionGetlitpicDM_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=newDedeTagParse();
$dtp->LoadSource($this->addTableRow['imgurls']);
$images=array();
if(is_array($dtp->CTags))
{
$pagenum=1;
foreach($dtp->CTagsas$ctag1)
{
if($ctag1->GetName()=="img")
{
$litpic.='<LI>
<DIVclass=img><Atitle="'.$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;
}
/**
*獲得靜態(tài)頁(yè)面圖集中圖片縮略列表
*
*@accesspublic
*@paramint$totalPage總頁(yè)數(shù)
*@paramint$nowPage當(dāng)前頁(yè)數(shù)
*@paramint$aid文檔id
*@returnstring
*/
functionGetlitpic_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=newDedeTagParse();
$dtp->LoadSource($this->addTableRow['imgurls']);
$images=array();
if(is_array($dtp->CTags))
{
$pagenum=1;
foreach($dtp->CTagsas$ctag1)
{
if($ctag1->GetName()=="img")
{
if($pagenum==1)
{
$litpic.='<LI>
<DIVclass=img><Atitle="'.$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>
<DIVclass=img><Atitle="'.$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;
}
最后就是模板的調(diào)用了,這就不再細(xì)說(shuō)了,當(dāng)然這只是一種方法!