订阅邮件
快捷导航

教你如何制作Discuz!模板

[复制链接]
查看: 2872|回复: 6
发表于 2012-8-11 08:18:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转合天下互动社区。

您需要 登录 才可以下载或查看,没有帐号?中文注册

x
接触Discuz! 有一段时间了,使用的风格都是别人的免费品。一来自己的美工水平实在不行,二来网上很少有比较完整的模板制作教程。因为工作的需要,现特写了一份模板的制作教程。本人才疏学浅,不对之处还请指正。
    模板制作前请将你的界面设计好,并制作成html+CSS的格式。这里我就以大魔王的“蓝色经典”作为样版(知识共享,希望大魔王不要介意,如有侵权,请及时通知我)。效果图如下:
              2012-8-10 14:26 上传
  下载附件 (75.92 KB)   
  
  
      


(图1)


在开始前,先了介绍一下discuz!的几个模板文件:
1、        header.htm --------------------------------------页面头部
2、        discus.htm---------------------------------------------------------------论坛首页
3、        footer.htm---------------------------------------------------------------页面底部
4、        viewthread--------------------------------------------------------------查看帖子内容

discuz!论坛的页面通常是几个模板文件共同作用下达到的效果,如图1就是header.htm+discus.htm+footer.htm这三个文件共同作用的效果。
Heaer.htm对应的是:
              2012-8-10 14:26 上传
  下载附件 (4.6 KB)   
  
  
      


(图2)


Footer.htm对应的是:
              2012-8-10 14:26 上传
  下载附件 (1.98 KB)   
  
  
      


(图3)


剩下的就是discuz.htm文件显示的了。
当然你要将首页显示的效果就制作成一个文件模板也是可以的,这里之所以分开,是因为header.htm和footer.hmt文件通常还会被其它的模版文件引用。也就是说,其它的页面(比如发贴的页面)的头部、底部与首页的头部、底部完全一样,分开来写就可以达到重复利用,减少劳动的效果。
下面我们就开始制作:
首先,现在我要制作的这套模板叫test,那么我就在templates目录下建立一个test目录。在test目录下再新建一个images文件夹用于存放这套模板的图片,把切好的所有图片保存到这个文件夹中。templates/test文件夹用于存放这套模板的htm文件,在这个目录中新建三个文件header.htm、discuz.htm、footer.htm,打开你设计好的主页html文件,将你想作为头部的那一段代码复制粘贴到header.htm文件中,
相应的将作为底部的那一段代码复制粘贴到footer.htm文件中,其余的代码复制粘贴到discuz.htm文件中。
最后在discuz.htm文件的最顶部和最底部分别加上:{subtemplate header} 和{subtemplate footer}
这两句算是discuz的语言,意思是将header.htm和footer.htm文件包含进来,这样就构成了一个完整的主页面了。
接下来的工作要在论坛后台设置中来完成
(1)        进入论坛点击 “系统设置 ——> 界面——> 模板管理”, 在新增模板后填入模板名称,模板文件所在目录,板权信息然后提交即可!如图4:
              2012-8-10 14:26 上传
  下载附件 (21.33 KB)   
  
  
      


(图4)


(2)        在“界面——> 风格管理” 中,在新增界面风格后填入方案名称“test”然后提交即可!
(3)        提交方案名称后,您就可以在界面风格中看到您所定义的新的风格方案。如下图:
              2012-8-10 14:26 上传
  下载附件 (50.9 KB)   
  
  
      


(图5)


注意上面用红色圆圈圈起来的那幅模版预览图,你的是不是没有显示出来?这需要将你的首页的效果图做成110x120并命名为preview.jpg,将这图片放到test目录下就可以了。到此,一套新的风格模板方案就添加到模板库里了,但还不是我们需要的最终效果,接下来要对模板文件继续进行
调整,以达到想要的最终效果
(4)        点击 [编辑] 后就可以进入该模板的风格配色方案的编辑页面,按照图6把各个对应参数填入相应位置。
              2012-8-10 14:26 上传
  下载附件 (119.5 KB)   
  
  
      


(图6)

填写好后,点击“提交”,更新一下缓存,浏览论坛首页出现下图:
              2012-8-10 14:26 上传
  下载附件 (50.83 KB)   
  
  
      


(图7)


呵呵,有内容出来了,可是排版上却变得乱七八糟了,这是因为还没有引入CSS文件。这时将原来设计好的CSS文件放到你模板目录下(templates/test),并将它重命名为“css_append.htm”(注意:改后的文件名是css_append,后缀名是htm)。接着打开header.htm文件,找到你引入CSS文件的语句,这会因为引入的语句不同而不同,我这里是将这个替换为:
$rsshead
$extrahead
{subtemplate css_script}
这样就可以将你的CSS文件引入了。进入后台更新一下缓存,现在的效果图如下:
              2012-8-10 14:26 上传
  下载附件 (33.16 KB)   
  
  
      


(图8)


这样就整齐了许多,这时你是不是发觉少了点东西?没错,图片没有显视出来。下面我们先将背景图(也就是CSS文件中引入的图片)显示出来。打开css_append.htm文件,找到所有你引入图片的地方,将路径替换为“{STYLEIMGDIR}”。例如:这里有一句:
#footer{padding:1em 0;background:url(images/footer_bg.gif) }
将它改为:
#footer{padding:1em 0;background:url({STYLEIMGDIR}/footer_bg.gif) repeat-x top;}
{STYLEIMGDIR}实际上是discuz的一个变量,当模板被解释时,就会用一个值来替换这个变量,这个变量的值可以在后台设置。进入后台后点击“界面——> 风格管理”出现下图:
              2012-8-10 14:26 上传
  下载附件 (42.24 KB)   
  
  
      


(图9)


找到你正在制作的test风格,点击“编辑”按钮,出现下图:
              2012-8-10 14:26 上传
  下载附件 (98.87 KB)   
  
  
      


(图10)


看到了吧,当模板被解释时,就会用上面所填的路径来替换这个变量。
好了,现在更新缓存再看一下效果:
              2012-8-10 14:26 上传
  下载附件 (43.8 KB)   
  
  
      


(图11)


哈哈,和原来设计的效果图一样了,是否有一种成功的喜悦?虽然,到这里已经迈出了成功的一步,但革命尚未成功,同志仍需努力!现在制作的模版是静态的,也就是说就算你发贴了,里面的内容也不会改变的,甚至你点个连接都会出错的。

下面我们就来让它“动”起来。
一、修改头部文件header.htm
1、        打开正在制作的模板header.htm文件(以下简称header.htm),以及默认模板templatesdefault 的header.htm文件(以下简称“默认header.htm”)。
2、        将header.htm文件的标题用 $navtitle $bbname $seotitle 来代替。例如:我这里是:“ 搜球论坛 ”改后就变成了“ $navtitle $bbname $seotitle ”
3、        看header.htm里是否有类似“”这样的语句,有就删除。然后,将默认header.htm里的以下语句:









复制粘贴到header.htm文件相应的位置(注这些对界面没什么影响,但对SEO优化有帮助)
4、        将默认header.htm里的以下语句:


复制粘贴到header.htm文件相应的位置(至于这些有什么作用,自己查一下吧)
5、        将头部的logo“动”起来
              2012-8-10 14:26 上传
  下载附件 (34.37 KB)   
  
  
      


(图12)


找到显示logo的地方,我这里是:
搜球论坛

将“index.php”和“搜球论坛”分别用$indexname和$bbname代替($indexname 是首页文件名的变量,$bbname是论坛名称变量,其它相同的地方都可以用这两个变量作替换,以增加模版的适应性。)
6、        让登陆状态“动”起来
              2012-8-10 14:26 上传
  下载附件 (9.81 KB)   
  
  
      


(图13)




        

上面是我设计的效果图和相应的代码,这是登陆时的显示状态,当然我还希望没登陆的时候这样显示:              2012-8-10 14:26 上传
  下载附件 (1.33 KB)   
  
  
      



(图14)


在默认header.htm文件中找到:
$discuz_userss{lang login_invisible_mode}{lang login_normal_mode}
                                |
                                [url=http://www.hn369518.com/my.php?item=threads{if $forum}&srchfid=$forum[fid]{/if}]{lang my_posts}[/url]
                                
                                        {lang space_short}
                                
                                        {lang space_short}
                                
                                {lang pm}($_DCOOKIE[pmnum])
                                
                                        {lang task}
                                
                                |
                                {lang user_center}
                                {lang modcp}
                                {lang admincp}
                                {lang logout}
                        
                                $_DCOOKIE[\'loginuser\']
                                {lang activation}
                                {lang logout}
                        
                                $reglinkname
                                {lang login}
                        
用这一段代码替换上面红色黑体部份,并在

<ul>
        
的后面加上这一句:
还是那句话,想知到上面代码具体的意思,只能你自己去查找,我不可能一个一个的来解释。
7、        让菜单“动”起来
              2012-8-10 14:26 上传
  下载附件 (3.52 KB)   
  
  
      


(图15)



        

            
  • 论坛                                                                                                                                       
  • 搜索

  •                         插件                                                                                                                                
  • 抽奖系统                                                                        
  • 聊天室
  • 竞拍中心        
  • 帮助
  • 导航                        
  • 搜球网社区




在默认header.htm文件中找到:

                                


               
               

        
用这一段代码替换上面红色黑体部份,这样就实现了菜单的调用。
到此整个头部header.htm文件模板就制作好了。


二、制作首页主体部分
同样打开正在制作的模板discuz.htm文件(以下简称discuz.htm),以及默认模板templatesdefault 的discuz.htm文件(以下简称“默认discuz.htm”)
1、        导航条
              2012-8-10 14:26 上传
  下载附件 (1.36 KB)   
  
  
      


(图16)


搜球论坛 &raquo; 首页

“搜球论坛”和“首页”分别用“$bbname”和“{lang home}”代替。
2、        版块列表
              2012-8-10 14:26 上传
  下载附件 (41.46 KB)   
  
  
      


(图17)


        
        小叶
           
         新手指南


         
                        
                                
                                  新手指南


                                  版主:
yysh

               

                        
                        2 / 2
                        
              我是新手

                          yysh - 2009-6-25 17:03
                        
                 
维卡官网:www.onelife.eu
发表于 2012-9-30 08:22:07 | 显示全部楼层
好困啊  
维卡官网:www.onelife.eu
发表于 2012-9-30 08:22:07 | 显示全部楼层
我想要`~  
维卡官网:www.onelife.eu
发表于 2012-9-30 08:22:07 | 显示全部楼层
嘿嘿  
维卡官网:www.onelife.eu
发表于 2012-9-30 08:22:07 | 显示全部楼层
我想要`~  
维卡官网:www.onelife.eu
发表于 2012-11-12 07:26:23 | 显示全部楼层
偶啥时才能熬出头啊.  
维卡官网:www.onelife.eu
发表于 2012-11-12 07:26:23 | 显示全部楼层
慢慢来,呵呵  
维卡官网:www.onelife.eu
您需要登录后才可以回帖 登录 | 中文注册

本版积分规则

精彩推荐