简单实现Discuz门户首页的头部跟其他地方头部不一样

2014-08-26 10:41 栏目:技术开发 查看(15072)

 大家可能已经看到了我们长沙建站网的网站风格,发现论坛、门户首页、门户列表与内页的头部都是不一样的。对于很多新手站长来说可能会感觉很神奇,但实际上是特别容易的,这里我们只告诉你实现Discuz门户首页的头部跟其他地方头部不一样,而至于实现很多页面都不同的话是一样的道理。
       其实呢Discuz使用了PHP模板引擎的一个类(类是面向对象开发中的一个名词),这个类的作用就是让程序和模板分离,比如我们看到别人做的模板就只有模板文件,而没有其他的东西。而且在模板中直接可以应用if循环,比如说{if}…..{/if},而如果是在PHP中应该是<?php if(){} ?>,也就是简化了我们一些东西,因为所有的执行过程其实已经封装到模板引擎中的那个类里面。当然另外这个模板引擎类还有执行缓存的功能,这里就不跟大家解释了。
      那么既然Discuz应用了这么一个模板引擎,那么我们要实现不同页面不同的就非常容易了。
      我们会看到很多文件都有以下这样的代码:

<!–{template common/header}–>

     那这是什么意思呢,其实上下两段就是调用公共的的头部和底部,因此如果我们要改变头部,比如说我们在模板目录/common/目录下新建了通过模板目录/common/header.htm修改过来的文件模板目录/common/headerindex.htm,以这个文件当做我们门户首页的的头部。那么我们只需要把门户首页文件的以上代码部分修改为:

<!–{template common/headerindex}–>

<!–中间其他的html代码–>

<!–{template common/footer}–>

     其实这里的<!– {}–>是通过discuz内部改进的,而不是我们html中的注释了,比如我们PHP中经典的一个模板引擎smarty类,如果是引用其他地方的文件默认的代码格式是

{include flie=”文件路径”}

      而DZ这个地方跟这里是类似的,而在smarty中,更像原生PHP中的include。
       
        好了,到这个地方相信大家也会举一反三了,也就是只需要改掉引用的文件就可以改为不同的了,不管是底部还是头部,还是其他的模块,比如说搜索框、导航条等等。

与我们的项目经理联系
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流

转载请注明出处:简单实现Discuz门户首页的头部跟其他地方头部不一样 - 微构网络
分享:
标签: