最近一段時間以來,有不少時間都在折騰DEDECMS,對其進(jìn)行了不少的優(yōu)化工作,以便其適應(yīng)我的應(yīng)用要求。在這其中,也遇到了不少的問題。譬如:DEDECMS根據(jù)副欄目進(jìn)行文章調(diào)用的問題。
DEDECMS中一個文章可以同時屬于兩個欄目,即一個主欄目一個副欄目,{dede:arclist} 屬性中可以通過typeid進(jìn)行主欄目有效性篩選,但是有時我們卻想根據(jù)副欄目進(jìn)行篩選,查了dedecms的在線用戶手冊發(fā)現(xiàn)沒有此功能,最后搜索到一個有效地解決辦法。只需修改標(biāo)簽對應(yīng)的源文件。
查找 dedecmsROOT/include/taglib/arclist.lib.php 文件,大概在第212行代碼處。
if($CrossID=='') $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).')';
else $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).','.$CrossID.')';
替換為:
if($CrossID=='')
$orwheres[] = ' typeid in ('.GetSonIds($typeid).') or typeid2 in ('.GetSonIds($typeid).')';
else
$orwheres[] = ' typeid in ('.GetSonIds($typeid).','.$CrossID.') or typeid2 in ('.GetSonIds($typeid).','.$CrossID.')';
示例:{dede:arclist typeid=’2,3,4′}….{/dede:arclist}
通過以上辦法,有效地解決了DEDECMS最新版本V5.6正式版(2010-08-18)(包括在此前的版本),不支持通過arclist標(biāo)簽調(diào)用副欄目文章的問題。
版權(quán)聲明: 本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除!謝謝!
轉(zhuǎn)載請注明: arclist標(biāo)簽調(diào)用副欄目文章的方法 for dedecms