帝國(guó)CMS怎么解決自動(dòng)分頁(yè)截?cái)嗟葮?biāo)簽、末頁(yè)空白問(wèn)題
帝國(guó)CMS在自動(dòng)分頁(yè)時(shí),存在兩個(gè)問(wèn)題:
(1)分頁(yè)符[!--分頁(yè)符--]會(huì)截?cái)辔闹械臉?biāo)簽,比如<p>、<div>、<h3>、<strong>等,造成頁(yè)面排版混亂;
(2)可能在文章末尾加上分頁(yè)符[!--分頁(yè)符--],生成一個(gè)正文為空的頁(yè)面,體驗(yàn)非常不好。
解決此問(wèn)題的方法是要修改自動(dòng)分頁(yè)函數(shù)。
1、必要修改:
打開(kāi) e/class/functions.php 文件,查找 function AutoDoPage 找到函數(shù),將此函數(shù)刪除或注釋掉,用下面的代碼替換:
function AutoDoPage($mybody,$spsize){
$sptag="[!--分頁(yè)符--]";
if(strlen($mybody)<$spsize) return $mybody;
$bds = explode('>',$mybody);
$npageBody = "";
$istable = 0;
$mybody = "";
foreach($bds as $i=>$k)
{
if($i==0){ $npageBody .= $bds[$i]; continue;}
$bds[$i] = ">".$bds[$i];
if(strlen($bds[$i])>6){
$tname = substr($bds[$i],1,5);
if(strtolower($tname)=='table') $istable++;
else if(strtolower($tname)=='/tabl') $istable--;
if($istable>0){ $npageBody .= $bds[$i]; continue; }
else $npageBody .= $bds[$i];
}else{
$npageBody .= $bds[$i];
}
if(strlen($npageBody)>$spsize){
$mybody .= $sptag.$npageBody;
$npageBody = "";
}
}
if($npageBody!="") $mybody .= $npageBody;
$mybody=str_replace($sptag.">",">".$sptag,$mybody);
$mybody=substr($mybody,strlen($sptag));
return $mybody;
}
2、不必須修改:
如果不喜歡<p>[!--分頁(yè)符--]</p>或<div>[!--分頁(yè)符--]</div>也被截?cái)啵梢岳^續(xù)修改:
查找//返回編譯,在其上的一個(gè)大括號(hào)}內(nèi)插入代碼:
$sptag="[!--分頁(yè)符--]";
$add[newstext]=str_replace(array("<p>".$sptag."</p>","<div>".$sptag."</div>"),$sptag,$add[newstext]);
友情提醒:
(1)根據(jù)帝國(guó)自動(dòng)分頁(yè)的算法,不要出現(xiàn)長(zhǎng)段落(段落長(zhǎng)度大于自動(dòng)分頁(yè)的長(zhǎng)度設(shè)置),否則會(huì)截?cái)喽温渲械母鞣N標(biāo)簽。
(2)完成了第2個(gè)修改后,在后臺(tái)編輯時(shí)還會(huì)出現(xiàn)<p>[!--分頁(yè)符--]</p>或<div>[!--分頁(yè)符--]</div>,但前臺(tái)生成時(shí)不會(huì)出現(xiàn)截?cái)唷?br />因系統(tǒng)會(huì)自動(dòng)解析分頁(yè)符代碼,所以這里用[!--分頁(yè)符--]代替系統(tǒng)分頁(yè)符!
相關(guān)推薦
-
帝國(guó)cms設(shè)置默認(rèn)分頁(yè)勾選和自動(dòng)分頁(yè)的字節(jié)數(shù)設(shè)置
帝國(guó)cms設(shè)置默認(rèn)分頁(yè)勾選和自動(dòng)分頁(yè)的字節(jié)數(shù)設(shè)置后臺(tái)-》系統(tǒng)設(shè)置-》管理數(shù)據(jù)表-》管理字段-》NWSTXT自動(dòng)分頁(yè),每chckd...











