比如有一个大类:新闻,新闻下面又添加了几个小类,国内新闻,国外新闻。
如果我想点击新闻的时候把所有的新闻都显示出来(国内新闻、国外新闻),现在程序实现不了这个功能,于是就查看了一下5u的程序,找到了解决的办法,于是发个帖子,分享出来:
打开inc/class_template.asp这个文件,找到289行, 把
If Len(CID) > 0 And isnumeric(CID) Then Tag_Where = Tag_Where & " And [CID]=" & CID ' 存在CID则调用指定CID/SID的内容
替换成:
Dim rui
If Len(CID) > 0 And isnumeric(CID) Then
set rui=db("select * from [{pre}Channel] where ID="&CID&"",1)
If Not rui.Eof Then
Tag_Where = Tag_Where & " And [CID] in ("&rui("ChildIDs")&")" ' 存在CID则调用指定CID/SID的内容
else
Tag_Where = Tag_Where & " And [CID]=" & CID
end if
rui.Close: Set rui = Nothing
end if
这个。然后在后台“栏目管理”里面,把“新闻”这个大类的“大类模板”改成list.html
现在动态访问没有问题了,但是生成静态还有问题。需要修改admin_xxx(后台目录里面的)admin_createhtml.asp这个文件:
把94行的end if屏蔽掉或删除这行。
然后把40行的 Set Rs = DB("Select [ID],[Name],[ChildID] From [{pre}Channel] Where [OutSideLink]=0 And [ID]>=" & Cids & " Order BY [ID] Asc",1)
这个改为:
Set Rs = DB("Select [ID],[Name],[ChildID],[ChildIDs] From [{pre}Channel] Where [OutSideLink]=0 And [ID]>=" & Cids & " Order BY [ID] Asc",1)
然后把55行的
Dim PageSizes : PageSizes = GetListSize(GetChannel(Rs(0),"Templateclass")) : Set Ns = DB("Select Count([ID]) From [{pre}Content] Where [CID]=" & Rs(0),1)
替换成:
Dim PageSizes : PageSizes = GetListSize(GetChannel(Rs(0),"Templateclass")) : Set Ns = DB("Select Count([ID]) From [{pre}Content] Where [CID] in (" &chenrui&")",1)
然后把49-52行的这几行
If Len(Rs(2)) > 0 Then
Call CreateChannel(Rs(0),1) : Response.Write "<span style='float:left;width:240px;' class='c_1'><font color=blue>封面</font> " & GetChannel(Rs(0),"Ruleindex") & "Index." & Defaultext & "</span>"
Call DB("Update [{pre}Channel] Set [NeedCreate]=0 Where [ID]=" & Rs(0),0)
Else
替换成:
If Len(Rs(3)) > 0 Then
dim chenrui
chenrui=Rs(3)
Else
chenrui=Rs(0)
end if
把
最好修改inc文件夹的class_channel.asp
把34行
If Len(Rs(2)) > 0 Or Page = 1 Then
替换成:
If Page = 1 Then
就可以了。希望能帮助到大家。因为改的地方有点多,有需要程序的话,可以给我发邮件289741101@qq.com,我会尽快传给你们的。