discuzx2.0模板制作解析header.htm

2024-02-14 13:48

本文主要是介绍discuzx2.0模板制作解析header.htm,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

discuzx2.0模板制作解析header.htm

header.html这个文件存储于common文件下,这个大家应该不陌生吧,我是每个DIV为小节来讲,头部的核心div我就不加if语句来讲解!因为代码太多了!我会在最下面给大家总结一下!修改应该注意的地方!

第1行代码:
<!–{subtemplate common/header_common}–>
代码解释:用于调用common文件下的header_common.html文件,
备注:<!–{subtemplate}–> 与<!–{template}–}–>是有区别的,<!–{subtemplate }–>后面的模板文件通常都是被包含在其他模板文件中的子体。这样在解析模板的时候,程序就会判断<!–{subtemplate }–>所引入的模板会被再一次解析一遍然后再和入口模板拼合,组成一个完整的模板。也就是说,如果我们添加的模板是在别的模板中被调用的话我们需 要以<!–{subtemplate 模板名称}–>的方式引入进来。

第2-29行代码:
从<meta name=”application-name” content=”$_G['setting']['bbname']” />开始到以</head>结尾
代码解释:这里主要放置一些外部文件,其中的代码不多作解释,大家在加的时候请考虑官方的书写规范!
备注:此处虽然不解释太多,但大家还是会用到!如果要加外部调用JS、css请按官方的模板制作规范来书写

第30-186行代码:
从<body>处开始到此文件的最下方
代码解释:这是首部文件的核心
备注:在修改时请注间要提前备份文件

第32-44行代码:
从<div id=”append_parent”></div><div id=”ajaxwaitid”></div>处开始到<!–{/if}–><div id=”toptb”>结尾
代码解释:此处是整的DIY样式导入、导出及样式修改等,此处代码是隐藏的,
备注:<div id=”toptb”>是方便你查找才写出!此代码不要修改,在修改模板时也不要漏了!

第32-44行代码:
从代码:<div id=”toptb”>到</div><!–{if !IS_ROBOT}–>
代码解释:顶部文件,用于放置导航与dz内部的一些功能,<div>右处内容</div>,<div>左处内容</div>
备注:在后台=》界面=》顶部导航。可以设置

 

 

第70-78行代码:

 

  1. <!–{if !IS_ROBOT}–>
  2.                         <!–{if $_G['uid'] && !emptyempty($_G['style']['extstyle'])}–>
  3.                                 <div id=”sslct_menu” class=”cl p_pop” style=”display: none;”>
  4.                                         <!–{if !$_G[style][defaultextstyle]}–><span class=”sslct_btn” onClick=”extstyle(”)” title=”{lang default}”><i></i></span><!–{/if}–>
  5.                                         <!–{loop $_G['style']['extstyle'] $extstyle}–>
  6.                                                 <span class=”sslct_btn” onClick=”extstyle(‘$extstyle[0]‘)” title=”$extstyle[1]“><i style=’background:$extstyle[2]‘></i></span>
  7.                                         <!–{/loop}–>
  8.                                 </div>
  9.                         <!–{/if}–>

 

代码解释:此处是拓展色的切换的菜单
备注:如里不需要可以删除

第80-96行代码:

 

  1. <div id=”qmenu_menu” class=”p_pop {if !$_G['uid']}blk{/if}” style=”display: none;”>
  2.                                         <!–{if $_G['uid']}–>
  3.                                         <ul>
  4.                                                 <!–{loop $_G['setting']['mynavs'] $nav}–>
  5.                                                         <!–{if $nav['available'] && (!$nav['level'] || ($nav['level'] == 1 && $_G['uid']) || ($nav['level'] == 2 && $_G['adminid'] > 0) || ($nav['level'] == 3 && $_G['adminid'] == 1))}–>
  6.                                                                 <li>$nav[code]</li>
  7.                                                         <!--{/if}-->
  8.                                                 <!--{/loop}-->
  9.                                         </ul>
  10.                                         <!--{else}-->
  11.                                                 <div class="ptm pbw hm">
  12.                                                         {lang my_nav_login}
  13.                                                 </div>
  14.                                         <!--{/if}-->
  15.                                 </div>
  16.                 <!--{/if}-->

 

代码解释:此处是快捷导航弹出的菜单,里面用到了<!--{if $_G['uid']}-->语句进行判断,意思是只有会员才可以浏览此处内容,循环我就不多讲了哈
备注:<!--{if $_G['uid']}-->语句可以用到很多地方,自己在做模板的时候,可能会用到!

 
第97行代码:

 

  1. <!--{ad/headerbanner/wp a_h}-->

 

代码解释:头部的广告代码,
备注:可以在后台=》运营=站内广告添加

第98-184行代码:
从<div id="hd">到 </div><!--{/if}-->
代码解释:头部的核心文件
备注:下面是头部核心的DIV指引

 

  1. <div id="hd">
  2.         <div class="wp">
  3.              <div class="hdc cl">
  4.                 <h2>logo</h2>---------------------------------->logo
  5.                  <div id="um">
  6.                              <div class="avt y">头像</div>-----------------------------头像
  7.                        <p>
  8.                           <!--{hook/global_usernav_extra1}-->------------------------------------>插件嵌入点1
  9.                           <!--{hook/global_usernav_extra2}-->--------------------------------->插件嵌入点2
  10.                           个人信息---------------------------------------->个人信息
  11.                       </p>
  12.                       <p>
  13.                          <!--{hook/global_usernav_extra3}-->--------------------------->插件嵌入点3
  14.                          个人信息---------------------------------------->个人信息
  15.                      </p>
  16.                  </div>
  17.                        <!--{template member/login_simple}-->----- > 登录框(此处调用member/login_simple.html文件)                         </div>
  18.               <div id="nv">
  19.                   <a href="javascript:;" id="qmenu" >快捷导航</a>-------------->快捷导航
  20.                 <ul>
  21.                  <li>栏目导航</li>--------------------------------->栏目导航
  22.                  </ul>
  23.                 </div>
  24.                <ul class="p_pop h_pop" id="plugin_menu" style="display: none">
  25.                       二级导航菜单样式------------------------------------------------------>二级导航菜单样式
  26.                </ul>
  27.               < div id="mu" class="cl">
  28.                             二级导航横排>------------->二级导航横排样式
  29.               </div>
  30.               <!--{ad/subnavbanner/a_mu}-->------------------------->头部广告(后台站点广告处可以添加)
  31.                 <!--{subtemplate common/pubsearchform}-->-------->搜索(此处调用common/pubsearchform文件)                   </div>
  32.         </div><!--{hook/global_header}-->插件嵌入点

 

总结大家在修改的时候他的每个DIV和ul、li、和会有if语句,大家在看明白以上图后,在添加的时候要注意一下IF语句的作用,我就没有把代码复制到上面一一解析,希望大家去妍究下!利用这些资源,自己可以做出很漂亮的头部,举一反三!


这篇关于discuzx2.0模板制作解析header.htm的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/708666

相关文章

在C#中合并和解析相对路径方式

《在C#中合并和解析相对路径方式》Path类提供了几个用于操作文件路径的静态方法,其中包括Combine方法和GetFullPath方法,Combine方法将两个路径合并在一起,但不会解析包含相对元素... 目录C#合并和解析相对路径System.IO.Path类幸运的是总结C#合并和解析相对路径对于 C

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密

Java解析JSON的六种方案

《Java解析JSON的六种方案》这篇文章介绍了6种JSON解析方案,包括Jackson、Gson、FastJSON、JsonPath、、手动解析,分别阐述了它们的功能特点、代码示例、高级功能、优缺点... 目录前言1. 使用 Jackson:业界标配功能特点代码示例高级功能优缺点2. 使用 Gson:轻量

Java如何接收并解析HL7协议数据

《Java如何接收并解析HL7协议数据》文章主要介绍了HL7协议及其在医疗行业中的应用,详细描述了如何配置环境、接收和解析数据,以及与前端进行交互的实现方法,文章还分享了使用7Edit工具进行调试的经... 目录一、前言二、正文1、环境配置2、数据接收:HL7Monitor3、数据解析:HL7Busines

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

poj3468(线段树成段更新模板题)

题意:包括两个操作:1、将[a.b]上的数字加上v;2、查询区间[a,b]上的和 下面的介绍是下解题思路: 首先介绍  lazy-tag思想:用一个变量记录每一个线段树节点的变化值,当这部分线段的一致性被破坏我们就将这个变化值传递给子区间,大大增加了线段树的效率。 比如现在需要对[a,b]区间值进行加c操作,那么就从根节点[1,n]开始调用update函数进行操作,如果刚好执行到一个子节点,

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n