部分用戶在使用動易系統生成欄目列表時,不管是單個生成還是批量生成,有部分欄目始終報錯:Type mismatch,在使用了“修復欄目結構”等功能后,仍然出現一樣的問題。這到底是什么原因呢?
我們聯系用戶取得數據庫后,經過測試,發現確實存在問題,但換成官方模板后問題解決。到底是什么原因造成用戶自己的模板會出錯呢,我們經過仔細研究,原來是用戶自己制作的模板問題。下面具體為你解說。
在頻道首頁、大類欄目頁,動易有一對欄目循環列表標簽,用來對當前欄目的子欄目列表進行循環顯示。這個標簽就是:【ArticleList_ChildClass】欄目列表內容 【/ArticleList_ChildClass】。而在小類欄目頁及內容頁,是沒有這對標簽的。
另一個要注重的地方是:
{$GetPicArticle(ChannelID,rsClass_arrChildID,True,0,1,false,false,0,3,2,130,90,20,0,True,1)}
{$GetArticleList(ChannelID,rsClass_arrChildID,True,0,rsClass_ShowAllItem,rsClass_TopNumber,False,False,"",0,rsClass_ItemListOrderType,2,44,0,False,1,True,False,3,False,False,True,True,True,False,rsClass_ItemOpenType)}
大家注重這兩個標簽中的第二個參數的值:rsClass_arrChildID,只有在【ArticleList_ChildClass】欄目列表內容 【/ArticleList_ChildClass】這對標簽中的列表標簽GetArticleList和GetPicArticle的第二個參數才能使用這個值,這個值將翻譯成:rsClass("arrChildID"),表示只調用欄目循環中的當前欄目(包含所有子欄目)。
這樣想一下,就知道了,假如在【ArticleList_ChildClass】欄目列表內容 【/ArticleList_ChildClass】這對標簽以外這樣調用:{$GetPicArticle(ChannelID,rsClass_arrChildID,True,0,1,false,false,0,3,2,130,90,20,0,True,1)},則肯定因為在欄目循環以外,而導致Type mismatch(類型不匹配)。
同樣的,因為在小類欄目和內容頁中,因為不解析欄目循環列表標簽,所以假如在小類模板和內容頁模板中,假如這樣使用標簽:{$GetPicArticle(ChannelID,rsClass_arrChildID,True,0,1,false,false,0,3,2,130,90,20,0,True,1)},即使你把這個標簽放在【ArticleList_ChildClass】欄目列表內容 【/ArticleList_ChildClass】中,仍然會出現類型不匹配的錯誤。
現在回過頭來看這個用戶的模板,他出錯的原因就是為了偷懶,直接把大類模板復制到小類模板中,從面導到在生成小類列表的欄目時,始終報Type mismatch(類型不匹配)的錯誤。
現在大家明白了嗎?假如你的網站也出現同樣問題,知道怎么解決了吧?對,就是檢查你的模板。
新聞熱點
疑難解答
圖片精選