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

罗码gitluo

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

手机动态码快速登录

手机号快速注册登录

搜索
开启左侧

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

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

( N! J: ~) i" v2 S& k. R第2-29行代码:
0 ~! m5 A, e4 R5 C2 ]2 b从<meta name=”application-name” content=”$_G[‘setting’][‘bbname’]” />开始到以</head>结尾
3 h0 v) r, Z2 e( m8 ]6 n$ ]代码解释:这里主要放置一些外部文件,其中的代码不多作解释,大家在加的时候请考虑官方的书写规范!1 H5 h6 i: k  O2 K2 `. n! N( k0 T% c
备注:此处虽然不解释太多,但大家还是会用到!如果要加外部调用JS、css请按官方的模板制作规范来书写
" H' Y+ d% }- A* g3 l2 M5 A
- e/ H. k/ o4 K& Z; |5 z第30-186行代码:
. ~: W9 [7 s; o5 ~9 l2 D4 E从<body>处开始到此文件的最下方
) u% D5 W; o- K9 J5 j* R% x6 d! D代码解释:这是首部文件的核心
$ [5 t$ R; b# Y4 V9 E2 M备注:在修改时请注间要提前备份文件
- ^' ^3 k8 G5 V5 A- w
7 _$ M, g( Y6 H) N第32-44行代码:
2 y' {& z  z" m8 t' m9 I4 n4 G# E从<div id=”append_parent”></div><div id=”ajaxwaitid”></div>处开始到<!–{/if}–><div id=”toptb” class=”cl”>结尾$ z- d; v  M8 W. H* r2 P
代码解释:此处是整的DIY样式导入、导出及样式修改等,此处代码是隐藏的,
7 j: Y; Z' ?2 [% v( ?. o1 }- ?备注:<div id=”toptb” class=”cl”>是方便你查找才写出!此代码不要修改,在修改模板时也不要漏了!
9 f! S  X0 E, W0 ?' H. h
7 z* }1 h! L* r# j9 V' t2 l" U0 c第32-44行代码:
0 A. ^7 c5 t4 o# l, j+ P! ?从代码:<div id=”toptb” class=”cl”>到</div><!–{if !IS_ROBOT}–>9 U7 J: n6 A% x6 G7 w6 ]
代码解释:顶部文件,用于放置导航与dz内部的一些功能,<div class=”y”>右处内容</div>,<div class=”z”>左处内容</div>3 i" Y9 Q% D0 Z+ i* B) w8 J
备注:在后台=》界面=》顶部导航。可以设置/ G5 z. O- O/ x

" |* b0 b) b, n2 k第70-78行代码:
) U3 q# A2 ?7 ]! p8 e( a. R7 n4 s6 H# |. w$ W
<!–{if !IS_ROBOT}–>( @$ W* f  v  T8 U
                        <!–{if $_G[‘uid’] && !empty($_G[‘style’][‘extstyle’])}–># F6 O8 a$ b0 _1 L& ^/ `
                                <div id=”sslct_menu” class=”cl p_pop” style=”display: none;”>
8 K8 r3 i# L7 C4 ?" G$ n                                        <!–{if !$_G[style][defaultextstyle]}–><span class=”sslct_btn” onClick=”extstyle(”)” title=”{lang default}”><i></i></span><!–{/if}–>/ S" f7 X( l. h' S
                                        <!–{loop $_G[‘style’][‘extstyle’] $extstyle}–>' @, B6 l# p  ?4 V: p* A6 N7 D8 ~1 A
                                                <span class=”sslct_btn” onClick=”extstyle(‘$extstyle[0]’)” title=”$extstyle[1]”><i style=’backgroundextstyle[2]’></i></span>
6 ?' T" W% B7 Q                                        <!–{/loop}–>
5 r! D9 B8 n7 d' K- E  k4 b) H% f                                </div>/ f. n3 K8 W0 r3 {. w
                        <!–{/if}–>0 D$ ]5 |# {, A3 E

7 k8 a/ a5 @' y; N代码解释:此处是拓展色的切换的菜单
& C/ f7 x0 x6 w& ^# b- t备注:如里不需要可以删除
9 S, s, Q4 d7 l2 k1 E! v+ _5 l, ]( r3 D1 u' Q. H. y; _2 r0 _* K
第80-96行代码:
, c& y+ y& }% ?' u; e7 x: E
; J! e1 N0 K$ G- r0 K6 q<div id=”qmenu_menu” class=”p_pop {if !$_G[‘uid’]}blk{/if}” style=”display: none;”>9 h0 @$ s, l( d7 ^. ]2 F
                                        <!–{if $_G[‘uid’]}–># s8 L" z- @' b+ D/ T) s
                                        <ul>
! [! l% c+ m. Y6 }                                                <!–{loop $_G[‘setting’][‘mynavs’] $nav}–>
- r. g% v; h7 A                                                        <!–{if $nav[‘available’] && (!$nav[‘level’] || ($nav[‘level’] == 1 && $_G[‘uid’]) || ($nav[‘level’] == 2 && $_G[‘adminid’] > 0) || ($nav[‘level’] == 3 && $_G[‘adminid’] == 1))}–>3 d* w2 B' O- y* h1 P5 W( D
                                                                <li>$nav[code]</li>+ n' m# {! ^0 q. P! u( w! N$ E
                                                        <!–{/if}–>
5 p: r7 B% ?6 C5 e. w                                                <!–{/loop}–>
/ N5 ]( u) q1 c                                        </ul>
6 R3 O% L. m1 t7 ]- Y                                        <!–{else}–>
0 g) i9 K) R: C+ l" l& X* K                                                <div class=”ptm pbw hm”>; D! ]! W9 v9 X5 A" C/ r) z; {" ~
                                                        {lang my_nav_login}) u; G5 D1 ]) u0 N
                                                </div>* M; M4 M( T/ L, W$ A4 v
                                        <!–{/if}–>
; B* K6 T% Y; s# [3 h                                </div>& j" P9 n( j1 q, ]5 m1 W2 r4 l  _
                <!–{/if}–>& `: {" J1 G$ M( V
" }5 t& Y, d) x, [* t  A
代码解释:此处是快捷导航弹出的菜单,里面用到了<!–{if $_G[‘uid’]}–>语句进行判断,意思是只有会员才可以浏览此处内容,循环我就不多讲了哈# j6 C+ l; e* S! E3 h+ ?4 `
备注:<!–{if $_G[‘uid’]}–>语句可以用到很多地方,自己在做模板的时候,可能会用到!% K% U2 V. N# D2 l0 B
3 M7 v, m) l% C  D
第97行代码:
' B) t/ x) J3 E3 ]& R4 R0 T4 u4 s
. M! H0 B' h. a8 s<!–{ad/headerbanner/wp a_h}–>  f2 ?) \2 H' z% F

% M0 Z. H. v# S9 U1 V! Y2 m代码解释:头部的广告代码,; a$ G  [9 Z& D' v; r$ g& Z
备注:可以在后台=》运营=站内广告添加第98-184行代码:
1 }, O6 z$ E- w! I/ W1 \8 t从<div id=”hd”>到 </div><!–{/if}–>/ }* Y5 u" M  z$ g) F
代码解释:头部的核心文件. d& ]9 Z9 D3 _8 v9 X6 N! p
备注:下面是头部核心的DIV指引
6 p1 S  V4 ]% Y<div id=”hd”>9 V( I$ e, r) D( Y
<div class=”wp”>
( X. D3 _3 d* i: n2 ?* t6 V% e3 i<div class=”hdc cl”>
9 W) R% ~+ {# M8 p! Z' x8 f<h2>logo</h2>———————————->logo
5 r, `, _6 U6 }; e2 h8 w- \0 t/ {                 <div id=”um”>4 K4 X7 e# U1 H. q* o
<div class=”avt y”>头像</div>—————————–头像( y  M7 E3 |  j7 C
                       <p>0 g" N  y1 C9 |5 Z' ?1 S7 P
<!–{hook/global_usernav_extra1}–>————————————>插件嵌入点1, A+ L+ X0 b# r& u& p6 L2 G+ l
                          <!–{hook/global_usernav_extra2}–>———————————>插件嵌入点2
* Q9 X  V& X4 ~6 e个人信息—————————————->个人信息
: p& H' e+ S1 P4 ?</p>, i5 H: V6 }  d' e1 ^; w# V
<p>
6 B  a; F8 I$ E) s+ f1 ^! C<!–{hook/global_usernav_extra3}–>—————————>插件嵌入点31 |7 `- [: s7 |8 r8 y  \
个人信息—————————————->个人信息
) ]& }3 u7 t* D' ]4 k9 h</p>. K3 I. W2 @; M- p# M- t) a9 d
</div>' s! p* W  g5 U; L, p4 y% C) C
<!–{template member/login_simple}–>—– > 登录框(此处调用member/login_simple.html文件)                         </div>- e" m; ?" b) B$ [) l
<div id=”nv”>
$ H2 y; R2 p' B2 X4 X! q0 w1 }<a href=”javascript:;” id=”qmenu” >快捷导航</a>————–>快捷导航
1 R8 }! z6 E/ J" F8 ]* v& Z5 p                <ul>! a7 x! p% t; H4 M
<li>栏目导航</li>———————————>栏目导航
& Q% v6 r" V3 w9 W5 e. _                 </ul>) F1 V: C1 e& k4 h4 _, y6 J$ _
</div>
) y4 r* |  Y( G$ C7 ^* ?1 j4 c<ul class=”p_pop h_pop” id=”plugin_menu” style=”display: none”>
% T2 O, l, r; n7 v二级导航菜单样式——————————————————>二级导航菜单样式3 g. F" R: X% X# N4 T/ Q8 `! F
</ul>
% R8 U* i+ {6 a  r; V$ M< div id=”mu” class=”cl”>9 O" V9 U) }7 I; Y1 w7 w) ]- S1 L8 K
二级导航横排>————->二级导航横排样式1 }8 a0 X$ A- a$ F& C# V3 k+ T1 h
              </div>
4 e! d. C& [! U# M6 W<!–{ad/subnavbanner/a_mu}–>————————->头部广告(后台站点广告处可以添加)
6 h/ q8 l1 ?. A( ]& N<!–{subtemplate common/pubsearchform}–>——–>搜索(此处调用common/pubsearchform文件)                   </div>. {7 u7 r* Q% P
</div><!–{hook/global_header}–>插件嵌入点( i6 H' p+ ~3 e

. L2 W1 P( y6 l$ d总结:大家在修改的时候他的每个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-1-15 22:10 , Processed in 0.143751 second(s), 59 queries .

Powered by 罗码网络! X3.4

© 2001-2017

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