低一度

顶部横幅

z-blog各栏目分类实现自定义模板

2010-6-5 - diyidu - zblog相关 - Views

这个问题之前群里有同志咨询过我,记得当时我的回答很肯定——能够实现,可一直就没闲暇去研究。今天低一度仔细推敲了下,总算是有点思路了,大致只需要走如下两个步骤即可——

首先是id判断。z-blog的栏目分类在数据库中都有各自的独立id,这就好办了,我们可以采取约束每个id(即每个分类)读取相应页面模板的办法,来加以区分。例如,命令“catalog.asp?cate=1”(其中1为该分类在数据库里的id)即“分类1”单独指向我们为之编写的模板页面“catalog1.html”;命令“catalog.asp?cate=2”(其中2为该分类在数据库里的id)即“分类2”单独指向我们为之编写的模板页面“catalog2.html”……依此类推,来实现各栏目分类模板的个性化。

其次是剩余类别判断。诸多分类中,那些不需要自定义风格的类别(即剩余类别,同样是根据其id),可以命令它们统一指向一个共同的页面模板,如“catalog.html”,这样就可以保证没有漏网之鱼了。

具体操作也很简单:

1.修改根目录下的“catalog.asp”文件,在41行附近找到代码“ArtList.template="CATALOG"”,将之修改为——

ArtList.template="CATALOG" & Request.QueryString("cate")
If ArtList.template="" Then
ArtList.template="CATALOG"
Else
ArtList.template="CATALOG" & Request.QueryString("cate")
End If

2.修改“根目录/FUNCTION/c_system_base.asp”文件,在2618行附近找到代码“ArtList.template="CATALOG"”,将之修改为——

ArtList.template="CATALOG" & intCateId

OK,就是这么简单呀。接下来,你只需根据各栏目类别的独立id,单独为它们编写好页面模板以供调用即可。

PS:以上方法仅适用于zblog 1.8,其他版本未经测试。如果您并不熟悉ZB及其模板,低一度不建议您尝试实现此功能,以免混乱。

另外:其实按照以上的原理,还可以举一反三实现文章内页使用不同的模板,不过这个我并不提倡,每篇日志如果都单独对应一个模板是相当恐怖的,而且若真需要这么搞还得单独加一个类似留言本的判断,就是当没有guestbook.html的时候,读取single.html。这个就不展开了!

关键词 // Z-Blog Z-Blog拓展 Z-Blog技巧
出处:低一度,链接:http://www.diyidu.cn/post/zblog_catalog_theme.html

上一篇:z-blog主题制作基础教程(1) 下一篇:z-blog侧边栏评论列表效果美化

随机推荐

to "z-blog各栏目分类实现自定义模板"

  • 我是周哥
    #1 我是周哥 回复该留言 2010-6-5 18:08:43
    哥,你也弄出来了呀。
    我是周哥 于 2010-6-5 18:09:46 回复
    新鲜人的设计共享的模板就已经实现自定义了。不错哦,支持桶哥!不知道1.9出来后官方会不会默认了这个功能呢?
    diyidu 于 2010-6-5 18:18:32 回复
    一般不会,这个其实只对主题制作者有用。
  • SuperRadio
    #2 SuperRadio 回复该留言 2010-6-5 21:36:19
    我用的是WP,模板都是改现成的,呵呵。
    diyidu 于 2010-6-6 1:36:48 回复
    有现成的改还不好?
  • 醉美点金
    #3 醉美点金 回复该留言 2010-6-5 22:07:15
    可惜跑到wp阵营去了,路过学习下。
    diyidu 于 2010-6-6 1:37:28 回复
    用WP好啊,就没必要为主题少担忧了。
  • 朵未
    #4 朵未 回复该留言 2010-6-5 23:45:07
    以前用zblog,以后有机会再搞个zb玩玩,自己也学习学习。
    diyidu 于 2010-6-6 1:37:52 回复
    欢迎欢迎。
  • boydu
    #5 boydu 回复该留言 2010-6-5 23:56:26
    网站很漂亮,内容也吸引人,支持一下。
    diyidu 于 2010-6-6 1:38:16 回复
    多谢,常来哦。
  • 男之都网络
    #6 男之都网络 回复该留言 2010-6-5 23:59:24
    博主那里的主机,可真快啊!
    diyidu 于 2010-6-6 1:38:49 回复
    是吗?老有人说打不开呢。
  • 刘晓林
    #7 刘晓林 回复该留言 2010-6-6 0:03:07
    你这个主题很好看,如果有WordPress的就好了!
    diyidu 于 2010-6-6 1:39:22 回复
    我这个就是仿WP的呀!
  • 猫哥
    #8 猫哥 回复该留言 2010-6-6 0:04:42
    又换了个模板了?
    diyidu 于 2010-6-6 1:39:49 回复
    是啊,换了一周了。
  • 混生
    #9 混生 回复该留言 2010-6-6 9:09:48
    发现很多博客都在写zblog的模板教程。
    diyidu 于 2010-6-6 9:13:24 回复
    是吗?那我得写得精细一点了。
  • 帅哥
    #10 帅哥 回复该留言 2010-6-6 10:01:11
    我用的是WP,没用过zblog。
    diyidu 于 2010-6-6 10:05:17 回复
    恩,ZB也不错的。有机会试下哦。
  • 返利网
    #12 返利网 回复该留言 2010-6-6 10:10:57
    您的博客真漂亮,网站真的不错,来踩了,感谢分享!
    diyidu 于 2010-6-6 11:25:13 回复
    谢谢夸奖,不过请不要来这里发广告,谢谢。
  • 煎饼
    #13 煎饼 回复该留言 2010-6-6 10:32:04
    煎饼昨天新开博,今天第一次造访,还望前辈多多指点。
    diyidu 于 2010-6-6 11:26:21 回复
    这么年轻的博主啊,呵呵。欢迎!
  • 疾风
    #14 疾风 回复该留言 2010-6-6 12:03:56
    俺的是WP,嘿嘿~
    diyidu 于 2010-6-6 12:12:20 回复
    用WP的太多了。
  • 征途布丁
    #16 征途布丁 回复该留言 2010-6-6 12:08:59
    回访下!我发现最近写技术类的博客比较流行啊。
    diyidu 于 2010-6-6 12:13:19 回复
    主要原因是这类博客比较多吧?
  • kaka
    #17 kaka 回复该留言 2010-6-6 13:07:32
    以前玩PJ的~现在搞ZB~学习一下~
    diyidu 于 2010-6-6 13:38:28 回复
    PJ我也玩过一年多啊。
  • 阿郎
    #18 阿郎 回复该留言 2010-6-6 13:34:18
    这个必须顶啊,牛B。
    diyidu 于 2010-6-6 13:38:55 回复
    多谢。欢迎常来。
  • boydu
    #19 boydu 回复该留言 2010-6-6 14:12:41
    对WP还要多研究了。
    diyidu 于 2010-6-6 14:22:33 回复
    呵,用什么研究什么:)
  • 男之都网络
    #20 男之都网络 回复该留言 2010-6-6 14:13:29
    博主的网站速度很快啊,再次感觉到啦。
    diyidu 于 2010-6-6 14:23:04 回复
    速度还可以吧,1200MS左右。
  • TTkea
    #21 TTkea 回复该留言 2010-6-6 14:39:51
    zblog不错啊,我的sablog都快没人管了,呵呵。
    diyidu 于 2010-6-6 14:42:25 回复
    哈,Sablog最近好像确实很低调哦。
  • u特尔
    #22 u特尔 回复该留言 2010-6-6 14:40:20
    模板制作教程写得很好,一直都没有静下心来做,谢谢你的无私分享,辛苦了~
    diyidu 于 2010-6-6 14:43:07 回复
    其实,我也是在学习中。。
  • 星空有你
    #23 星空有你 回复该留言 2010-6-6 15:33:51
    WP的飘过~是因为Z-BLOG快么?同样想知道谁的主机~
    diyidu 于 2010-6-6 15:47:37 回复
    风云互联的主机。快是因为模板科学。
  • 老实人博客
    #24 老实人博客 回复该留言 2010-6-6 22:07:20
    这个东西,动起来麻烦吧,新手搞不来~
    diyidu 于 2010-6-6 23:21:32 回复
    这个可以说是拓展了。
  • 石头
    #25 石头 回复该留言 2010-6-7 8:43:12
    这样可以适合于catalog.asp?id=1这样的方式访问,那是否也会根据ID生成不同的静态页面呢?
    diyidu 于 2010-6-7 8:49:03 回复
    可以的,因为不管静泰动态,都是用ID来判断。
  • 未
    #26 回复该留言 2010-6-7 9:06:15
    我现在用的也是WP,http://www.diyidu.cn/function/c_validcode.asp?name=commentvalid
    diyidu 于 2010-6-7 9:26:57 回复
    呵,你发这个验证码的图片路径干啥?
  • HCONLY
    #27 HCONLY 回复该留言 2010-6-9 22:17:28
    太好了,我还在等下一个版本会支持这个功能,却没想到自己动手,懒得。。呵呵。
    diyidu 于 2010-6-9 22:41:19 回复
    自己动手,丰衣足食。
  • louisvuitton
    #29 louisvuitton 回复该留言 2010-6-13 18:02:32
    楼主写得真好,学习了。谢谢!
    diyidu 于 2010-6-13 18:58:02 回复
    过奖了,多批评!
  • Laoji
    #30 Laoji 回复该留言 2010-6-22 11:14:57
    过来学习一下,博主看来研究得挺多的呀!可惜,我只能看懂asp,只会用.net来做东西!
    diyidu 于 2010-6-30 12:18:41 回复
    呵呵,瞎折腾的。
  • 千里眼
    #31 千里眼 回复该留言 2010-7-12 12:50:49
    我是从搜索引擎那里过来的,感谢你写了这么多关于zblog的修改教程,zblog正需要像你这样的人才啊。
    diyidu 于 2010-7-22 11:08:11 回复
    不客气,希望对你有用。
  • 路中人
    #32 路中人 回复该留言 2010-7-22 11:00:38
    看到你这篇文章的时候,很是兴奋,我一直想做自定义分类的修改方法,我按照你上面的方式进行自定义了,我先是改一个分类栏目测试了一下,改的那个分类能很好地展示出来,但其他的分类打不开了。我是这么修改的,你看看,是不是哪里错了,请帮我分析一下,谢谢。我QQ号是:951226227,希望有时间能和您请教一下。

    ArtList.template="CATALOG" & Request.QueryString("cate")
    If ArtList.template="6" Then
    ArtList.template="catalog6.html"
    Else
    If ArtList.template="1" Then
    ArtList.template="catalog.html"
    Else
    If ArtList.template="2" Then
    ArtList.template="catalog.html"
    Else
    If ArtList.template="3" Then
    ArtList.template="catalog.html"
    Else
    If ArtList.template="4" Then
    ArtList.template="catalog.html"
    Else
    If ArtList.template="5" Then
    ArtList.template="catalog.html"
    Else
    ArtList.template="CATALOG" & Request.QueryString("cate")
    End If
    diyidu 于 2010-8-2 10:22:14 回复
    哈哈,刚刚休假回来,抱歉。
  • fncat
    #35 fncat 回复该留言 2011-3-11 1:01:04
    博主你好,找了好多相关的文章都没有搞定,结果还是看到你这篇文章才学会的。不过好像把代码添加进去以后所有设置的页面都可以正常调用,正常打开,可是那些没有定议的分类打开以后就是空白的了,没有向博主所说的那样,其它的所有分类都会指向 catalog.html 这个文件呀。问题补充:我没有你修改这篇文章里面的代码,直接拿来用的,是否还要再改一下才可以用。
  • wxziyang
    #36 wxziyang 回复该留言 2011-4-10 18:23:15
    你好,我按你的方法能够正常调用模板,但模板不能再调用各标签,例如“分类热门”。
  • 阿固
    #37 阿固 回复该留言 2011-6-9 0:05:18
    你的博客帮了我不少的忙,第一次仿网站 也是第一次做网站,还在调试中,我不是32楼这样改的,我就直接把桶哥的代码搬过来,然后在THEMES\default\TEMPLATE里直接做catalog1.html,catalog2.html……这样。都可以显示出来!可是问题又出来啦,比如ID为5的分类,没有做一个相应的catalog5.html,它不会自动的指向catalog.html,和其他人说的一样,是一望无际,什么都看不到!桶哥看到我的留言了,请在下面给我回复一下哦。我什么代码都不懂的,我还是硬生生的仿成了一个网站。出来效果居然一模一样。哈哈!

    还有分类列表增加时间也是看到你的文章的,不过,我不会把时间放到“盒子”的右边。
  • 风一族
    #40 风一族 回复该留言 2012-1-11 15:21:43
    博主可真是细心照顾博客啊,每一个留言都回复,这种精神值得我好好学习。

Add comment

验证码