織夢(mèng)(dede)arclist標(biāo)簽調(diào)用交叉欄目時(shí)調(diào)不出來(lái)

字號(hào):


    最近用了交叉欄目,發(fā)現(xiàn)當(dāng)為手動(dòng)指定交叉欄目ID時(shí)用arclist標(biāo)簽不能調(diào)出相關(guān)文章
    最后發(fā)現(xiàn)是
    arclist標(biāo)簽有問(wèn)題
    要修改的地方是:
    include/taglib/arclist.lib.php
    找到如下:
    if($ctag->GetAtt('cross')=='1')
    改為
    if($ctag->GetAtt('cross')!='0')
    再找:
    if($arr['crossid']!='') $selquery = "Select id,topid ` where id in('{$arr['crossid']}') Andid<>'{$typeid}' Andtopid<>'{$typeid}' ";
    改為:
    if($arr['crossid']!='') $selquery = "Select id,topid ` where id in({$arr['crossid']}) Andid<>'{$typeid}' Andtopid<>'{$typeid}' ";
    (這一行只去了一對(duì)單引號(hào),應(yīng)該是程序員手誤多出來(lái)了)
    就可以了
    分析:
    從數(shù)據(jù)庫(kù)可以看出
    當(dāng)欄目為不交叉時(shí)cross的值為0
    當(dāng)欄目為自動(dòng)獲取同名欄目時(shí)cross的值為1
    當(dāng)欄目為手動(dòng)指定ID時(shí)cross的值為2
    顯然if($ctag->GetAtt('cross')=='1')是錯(cuò)的,在手動(dòng)指定ID時(shí)$CrossID始終為空