DedeCMS發(fā)布文章時可選擇副欄目,以實現(xiàn)多個欄目關(guān)聯(lián)。但對獨立模型和系統(tǒng)模型之間還是有些不完美的地方,默認的是能選擇相同模型下的欄目做副欄目。自己研究了一下,寫個教程分享給大家。
打開/dede/article_add.htm,找到找到下面代碼,可以看出下拉選擇是由GetOptionList函數(shù)實現(xiàn)的。
<?php $typeOptions = GetOptionList($cid,$cuserLogin->getUserChannel(),$channelid); echo "<select name='typeid' id='typeid' style='width:240px'>\r\n"; echo "<option value='0'>請選擇欄目...</option>\r\n"; echo $typeOptions; echo "</select>"; ?>
繼續(xù)找到
<img src='images/menusearch2.gif' style='cursor:pointer;' onClick="ShowCatMap(event, this, <?php echo $channelid; ?>, 'typeid2')" alt='選擇副欄目' title='選擇副欄目' />
修改為
<img src='images/menusearch2.gif' style='cursor:pointer;' onClick="ShowCatMap(event, this, 0, 'typeid2')" alt='選擇副欄目' title='選擇副欄目' />
即是 <?php echo $channelid; ?> 修改為 0 即可實現(xiàn)全站欄目調(diào)用。其他article_edit.htm,archives_add.htm,archives_edit.htm修改方法一樣。
了解GetOptionList()函數(shù),在/dede/inc/inc_catalog_options.php里定義,感興趣的可以自己研讀一下。