打印本文 打印本文  关闭窗口 关闭窗口  
『动易』生成栏目时出现Type mismatch,怎么办?来源于瑞达科技网
作者:佚名  文章来源:网络  点击数  更新时间:2011/1/9   文章录入:瑞达  责任编辑:瑞达科技

部分用户在使用动易系统生成栏目列表时,不管是单个生成还是批量生成,有部分栏目始终报错: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(类型不匹配)的错误。

现在大家明白了吗?如果你的网站也出现同样问题,知道怎么解决了吧?对,就是检查你的模板。

 


打印本文 打印本文  关闭窗口 关闭窗口