罗码网络discuz插件模板教程微信小程序安卓电脑软件htmlphp源码下载

罗码gitluo

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

手机动态码快速登录

手机号快速注册登录

搜索
开启左侧

[DZ教程] Discuz!模板代码解析–header(头部文件)

[复制链接]
罗码男神 实名认证 官方 发表于 2020-1-20 03:01:00 来自手机 | 显示全部楼层 |阅读模式
很多站长在使用DZ的时候,很想修改(header)头部文件,却无从下手,今天我就从文件第一行到最后一行来给大家解剖一下此文件,熟悉的站长都应该知道,Dx的模板制作无不是三个部分,头部(hd)、主体(wp)、底部(ft),这三个部分就是制作模板的关键,然而其中三个部分个人觉得最难的还是主体部分,今天讲下头部文件代码,因为是代码教程,有些代码太长,没必要粘贴过来!我会尽量的写详细点,后须我会将一些常用 的模板文件进行解剖!在这里希望大家支持一下!随便AD下!& q" h! a7 @6 E( s3 Q0 Q& ]
  ^6 _: s. y! Q6 T' w# w& u
header.html这个文件存储于common文件下,这个大家应该不陌生吧,我是每个DIV为小节来讲,头部的核心div我就不加if语句来讲解!因为代码太多了!我会在最下面给大家总结一下!修改应该注意的地方!
6 A) s" }5 ~/ B- l. Y/ x/ j% Z, i" n
第1行代码:+ m: s5 b) c& a  P( w
<!–{subtemplate common/header_common}–>
: Q5 O! N3 F1 r( Y2 t9 ^( Z' U) e" z2 ?代码解释:用于调用common文件下的header_common.html文件,
0 b1 D" @8 k/ G( b- E$ e. W备注:<!–{subtemplate}–>与<!–{template}–}–>是有区别的,<!–{subtemplate }–>后面的模板文件通常都是被包含在其他模板文件中的子体。这样在解析模板的时候,程序就会判断<!–{subtemplate }–>所引入的模板会被再一次解析一遍然后再和入口模板拼合,组成一个完整的模板。也就是说,如果我们添加的模板是在别的模板中被调用的话我们需要以<!–{subtemplate 模板名称}–>的方式引入进来。, k, J9 w6 [0 o9 s

* @8 d5 G$ r, Z: r8 N* U. y第2-29行代码:( o4 ~0 d, C' i( C
从<meta name=”application-name” content=”$_G[‘setting’][‘bbname’]” />开始到以</head>结尾
. f$ h$ ~" Q# C5 Q代码解释:这里主要放置一些外部文件,其中的代码不多作解释,大家在加的时候请考虑官方的书写规范!0 Q+ q6 F1 ~- n+ Q: P
备注:此处虽然不解释太多,但大家还是会用到!如果要加外部调用JS、css请按官方的模板制作规范来书写
6 A' M# A) X, h5 H# i# I* M; U2 ^! d! B' R8 s
第30-186行代码:& ?5 @( r& n% B! U/ C- |
从<body>处开始到此文件的最下方3 B0 E4 \1 v' n* E
代码解释:这是首部文件的核心3 i+ k) E8 P0 o# v
备注:在修改时请注间要提前备份文件7 V/ a: I# M# y6 r0 n- F4 r' _2 @

: p; u9 _! I- c6 Z' i- _第32-44行代码:
" N1 p, `6 B' ?: Y" p! k从<div id=”append_parent”></div><div id=”ajaxwaitid”></div>处开始到<!–{/if}–><div id=”toptb” class=”cl”>结尾, F. }+ t- F& l* C" Z) `
代码解释:此处是整的DIY样式导入、导出及样式修改等,此处代码是隐藏的,7 @& n0 g/ Q) V' K/ l7 k0 {
备注:<div id=”toptb” class=”cl”>是方便你查找才写出!此代码不要修改,在修改模板时也不要漏了!
* M9 u4 @' d; z0 O9 V
' V) ^: L/ g  f* }5 u第32-44行代码:
3 I6 ]* \. y- _# p从代码:<div id=”toptb” class=”cl”>到</div><!–{if !IS_ROBOT}–>7 Z. @% B# r0 O6 s9 |
代码解释:顶部文件,用于放置导航与dz内部的一些功能,<div class=”y”>右处内容</div>,<div class=”z”>左处内容</div>; N7 L: _* o5 s1 T/ y# h
备注:在后台=》界面=》顶部导航。可以设置
( P/ ]- a3 {4 e+ `# n. F* O1 d! H8 f- ^* e
第70-78行代码:# }, ]% ^5 B( X7 C6 A
# ?) l# O6 `9 \  K  A! {) z
<!–{if !IS_ROBOT}–>
# H, C8 O4 d1 @6 Y# E% @                        <!–{if $_G[‘uid’] && !empty($_G[‘style’][‘extstyle’])}–>; V3 j+ l0 u: S+ T- F1 U
                                <div id=”sslct_menu” class=”cl p_pop” style=”display: none;”>" j. Z& I! I" [
                                        <!–{if !$_G[style][defaultextstyle]}–><span class=”sslct_btn” onClick=”extstyle(”)” title=”{lang default}”><i></i></span><!–{/if}–>
, L6 x' Y8 V, T- i                                        <!–{loop $_G[‘style’][‘extstyle’] $extstyle}–>
1 w1 A$ T$ c' V* x                                                <span class=”sslct_btn” onClick=”extstyle(‘$extstyle[0]’)” title=”$extstyle[1]”><i style=’backgroundextstyle[2]’></i></span>
+ ^$ u4 u' y2 e2 x/ H/ _( t                                        <!–{/loop}–>
' e% U, H7 h* ]) J% p. o! B* T                                </div>5 M3 y, |. y! W( B4 w
                        <!–{/if}–>- y$ Z' `& }. B# B4 ^% q+ B6 R! m
  |3 i% o3 S2 u5 M# m1 Y* D+ H
代码解释:此处是拓展色的切换的菜单
% h9 C3 n& o% i% W- W2 t  d备注:如里不需要可以删除
7 C5 D4 i/ A# ~2 J5 A) W" o* Q( n! f& W* F1 f" K& V* U. _2 j, _- w3 e
第80-96行代码:* J# y$ G8 Y9 }' W7 ]; C5 t

" k% n  O# \: {+ i<div id=”qmenu_menu” class=”p_pop {if !$_G[‘uid’]}blk{/if}” style=”display: none;”>
8 W/ a. R, {4 g" m" S* s4 [                                        <!–{if $_G[‘uid’]}–>
" o* a' b6 c" b                                        <ul>
* G8 P: A' Z: _, U; d5 v4 ]8 w                                                <!–{loop $_G[‘setting’][‘mynavs’] $nav}–>
( [. N* E4 L8 i                                                        <!–{if $nav[‘available’] && (!$nav[‘level’] || ($nav[‘level’] == 1 && $_G[‘uid’]) || ($nav[‘level’] == 2 && $_G[‘adminid’] > 0) || ($nav[‘level’] == 3 && $_G[‘adminid’] == 1))}–>. l2 @5 M( F/ J: G% y- n
                                                                <li>$nav[code]</li>
0 D7 R2 g, {0 Y                                                        <!–{/if}–>4 c# g" a; r" D& O( G) i
                                                <!–{/loop}–>
/ d) M0 l5 x  V! y! A: f% H  e                                        </ul>
/ {% W' n: S3 r: D$ q! h- v                                        <!–{else}–>0 _7 ~2 A. e9 o% R' ~9 Z7 w$ P
                                                <div class=”ptm pbw hm”>
" A: }4 s2 A: r8 E; B0 q" c                                                        {lang my_nav_login}
9 r0 U3 O3 q& r' \1 X  e                                                </div>; a0 f+ A* O9 {  D
                                        <!–{/if}–>
5 o, _* G4 t6 L# c3 l% F( v                                </div>
0 R; \* V' u$ p$ [4 V                <!–{/if}–>8 Y4 L$ ?9 Y* g4 ]; G1 s
- ^/ o2 m) i% F1 }
代码解释:此处是快捷导航弹出的菜单,里面用到了<!–{if $_G[‘uid’]}–>语句进行判断,意思是只有会员才可以浏览此处内容,循环我就不多讲了哈5 [9 P+ m" }+ a% m( D& `' M
备注:<!–{if $_G[‘uid’]}–>语句可以用到很多地方,自己在做模板的时候,可能会用到!* w3 H: N! D9 ]3 k7 }& Q
# G. K; q/ f( E- i
第97行代码:
, Q, _$ r$ e" x( i& @* A3 `* M, u
6 I: J" k1 _. _$ u: [; \4 u<!–{ad/headerbanner/wp a_h}–>
0 `# E$ B% I7 |3 p! A; S
9 h5 i1 e) ~7 J) l% s  H2 Z代码解释:头部的广告代码,
! d- u- h! b/ K备注:可以在后台=》运营=站内广告添加第98-184行代码:
5 P( y! P4 g8 n& n" S; X: u从<div id=”hd”>到 </div><!–{/if}–>6 e+ o( e7 @3 |* Y$ X" y! X% l
代码解释:头部的核心文件
; E6 O* p0 I2 g9 ?备注:下面是头部核心的DIV指引
/ [* z" X- U. g0 i. D6 A<div id=”hd”>6 }) @- I# X! d
<div class=”wp”>
; d, C) t& ?' Q  G# a8 c1 Y( y<div class=”hdc cl”>/ s" e8 ~) \/ {. e4 \# Q
<h2>logo</h2>———————————->logo
& {1 o: d1 E& [0 ~6 g' W5 @                 <div id=”um”>
, h) z# @8 ?0 S2 t<div class=”avt y”>头像</div>—————————–头像
1 Y8 Z: U5 @/ R  ^! u# _+ [                       <p>
( o+ s; M4 [6 f* b- H<!–{hook/global_usernav_extra1}–>————————————>插件嵌入点1* Z+ W( S; U& u, Z2 A) W
                          <!–{hook/global_usernav_extra2}–>———————————>插件嵌入点22 A8 t9 T' `9 |/ b
个人信息—————————————->个人信息& H9 P& {" q9 I/ M6 d: Y. t  C
</p>
9 _$ ~! @0 E' z2 s) s) i# c8 L<p>7 f( D4 i0 d# B, d8 Q! e4 D, r9 ^
<!–{hook/global_usernav_extra3}–>—————————>插件嵌入点3
. w3 A; @, m& z  Y- O# Q# t个人信息—————————————->个人信息
& Y# p* c# |- c</p>
. K' H, _6 {3 I: t- |5 _</div>+ d- ^0 [  w5 N- x) Q" N% O- Z
<!–{template member/login_simple}–>—– > 登录框(此处调用member/login_simple.html文件)                         </div>
, L. G( W7 g8 t# z7 W+ J" l# \<div id=”nv”>
& R' d4 K, f# y/ d+ {4 ]1 c8 m<a href=”javascript:;” id=”qmenu” >快捷导航</a>————–>快捷导航* p( L" K2 G3 {" L# n3 B: F- M" S) x. l5 }
                <ul>
! ]- @8 u. s: N4 Y' M! [<li>栏目导航</li>———————————>栏目导航! O. c7 x" q8 z! {% o
                 </ul>
8 z/ j+ b# A/ K$ H* Q</div>
5 B3 z# w: b* {6 \<ul class=”p_pop h_pop” id=”plugin_menu” style=”display: none”>
. T9 [' x9 w, Y二级导航菜单样式——————————————————>二级导航菜单样式: X3 o: z9 Y! t8 ~
</ul>$ B5 K$ n2 [; A3 h  a
< div id=”mu” class=”cl”>2 e. n8 d0 |( B% X
二级导航横排>————->二级导航横排样式2 F! H" J) \% Y
              </div>
$ q  R4 v5 r6 f% n6 X1 w& z; g6 N<!–{ad/subnavbanner/a_mu}–>————————->头部广告(后台站点广告处可以添加)8 o) U/ x2 S! M- E9 _) Y9 m
<!–{subtemplate common/pubsearchform}–>——–>搜索(此处调用common/pubsearchform文件)                   </div>" l7 u9 ?6 A9 V! b0 P- t. e) B( ]
</div><!–{hook/global_header}–>插件嵌入点1 g  l2 N3 N# ]  }4 H+ d. j
& M% z4 a. Q0 N' P/ o. `$ H8 c
总结:大家在修改的时候他的每个DIV和ul、li、和会有if语句,大家在看明白以上图后,在添加的时候要注意一下IF语句的作用,我就没有把代码复制到上面一一解析,希望大家去妍究下!利用这些资源,自己可以做出很漂亮的头部,举一反三!

想说又不敢说,说了又怕被拒绝,拒绝了又怕尴尬,就是这样的。内心很痛苦的那种。
起什么名字呢? 发表于 2020-1-20 13:44:18 | 显示全部楼层
沙发!沙发!

回复

使用道具 举报

MR.Z 发表于 2020-1-21 08:00:48 | 显示全部楼层
有道理。。。

回复

使用道具 举报

hgfhgf 发表于 2020-1-21 17:55:29 | 显示全部楼层
我是个凑数的。。。

回复

使用道具 举报

1287252690 发表于 2020-1-22 10:59:32 | 显示全部楼层
支持一下

回复

使用道具 举报

雨后晴天 发表于 2020-1-22 21:38:49 | 显示全部楼层
学习了,不错,讲的太有道理了

回复

使用道具 举报

岁月神偷 发表于 2020-1-23 11:01:26 | 显示全部楼层
过来看看的

回复

使用道具 举报

瑾瑾 发表于 2020-1-26 03:05:05 | 显示全部楼层
路过,支持一下啦

回复

使用道具 举报

 shu1332725 发表于 2020-1-26 04:06:46 | 显示全部楼层
过来看看的

回复

使用道具 举报

张红霞 发表于 2020-1-26 11:12:24 | 显示全部楼层
我是个凑数的。。。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录 手机动态码快速登录

本版积分规则

QQ|Archiver|手机版|小黑屋|罗码 ( 粤ICP备17073043号 )https://beian.miit.gov.cn/#/home

GMT+8, 2026-8-25 21:25 , Processed in 0.134688 second(s), 57 queries .

Powered by 罗码网络! X3.4

© 2001-2017

快速回复 返回顶部 返回列表