在織夢模板網(wǎng)給用戶制作織夢模板的時候,經(jīng)常有用戶為了增加網(wǎng)站粘性,要求武林網(wǎng)小編在網(wǎng)站欄目和內(nèi)容頁面增加一些相關(guān)欄目和相關(guān)文章的推薦。做過織夢模板的站長可能都了解,織夢DEDECMS可以通過likearticle標簽的調(diào)用來實現(xiàn),但我們發(fā)現(xiàn)在使用likearticle標簽在實現(xiàn)文檔關(guān)聯(lián)時,
只能調(diào)用當前欄目(包括頂級欄目下的下級欄目)的文檔,其他欄目的相關(guān)文章確實不能被調(diào)用顯示,那么我們?nèi)绾蝸韺崿F(xiàn)關(guān)聯(lián)網(wǎng)站的所有文檔呢?下面織夢模板網(wǎng)小編給出解決方法。
實現(xiàn)方法
打開/include/taglib/likearticle.lib.php文件,找到如下代碼:
if(!emptyempty($refObj->Typelink->TypeInfos['reid'])) { $typeid = $refObj->Typelink->TypeInfos['reid'];}將其替換為如下代碼:
if($typeid == '0'){ $typeid = ''; } else if(!emptyempty($refObj->Typelink->TypeInfos['reid'])) { $typeid = $refObj->Typelink->TypeInfos['reid']; }保存后即可。
通過這樣的修改以后,相關(guān)文檔的調(diào)用就會默認索引所有的文檔了。
這里需要給大家糾正一下,在相關(guān)文檔標簽里,限制調(diào)用欄目的參數(shù)為 mytypeid 而不是 typeid,希望大家要注意。
下面織夢模板網(wǎng)給出代碼解釋
我們增加的實際核心代碼為:
if($typeid == '0'){ $typeid = ''; }它的意思是,如果typeid傳來的值等于0,那么就將變量$typeid為空。而索引$typeid變量是在下面SQL語句里:
Select arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule, tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath from `dede_archives` arc left join `dede_arctype` tp on arc.typeid=tp.id where arc.arcrank>-1 and ($keyword) $typeid $orderquery limit 0, $row
而這里的$typeid變量也是在上一行的
$typeid = " And arc.typeid in($typeid) And arc.id<>$arcid ";
中進行賦值。那么我們將這個$typeid 變量是事先就判斷并賦值為空以后,一切的問題就自燃迎刃而解了。有興趣的朋友可以自己親自動手嘗試看看效果。
以上就是織夢模板實現(xiàn)likearticle關(guān)聯(lián)網(wǎng)站的所有文檔的方法的全部內(nèi)容,希望對大家的學習和解決疑問有所幫助,也希望大家多多支持武林網(wǎng)。新聞熱點
疑難解答
圖片精選