(轉)discuz教程:製做網站模板前必須瞭解的界面結構(頁頭頁尾模板文件)


頁頭文件路徑:
template/default/common/header.htm


header.htm文件二次加載的文件有:

template/default/common/header_common.htm  全局公共文件
     |--該文件中包含了頁面TITLE,對瀏覽器的申明,以及全局必須存在的基本代碼,因此不建議新手修改此文件

template/default/common/header_diy.htm  DIY模式時加載的DIY浮層菜單
template/default/common/member/login_simple.htm  右上角迷你登錄框(未登陸時調用該文件)

</head>以上的代碼必須保留,此段代碼爲全部頁面必須使用的腳本、樣式載入,去掉後頁面將會錯誤顯示!!

除了保留</head>以上的代碼,如下代碼也是必須存在的

頁面中的ajax交互功能必須依賴的代碼:

  1. <div id="append_parent"></div><div id="ajaxwaitid"></div>

DIY功能必須的代碼:

  1. <!--{if $_GET['diy'] == 'yes' && (CURMODULE == 'topic' || $_G['group']['allowdiy']) && !empty($_G['style']['tplfile'])}-->
  2.         <!--{template common/header_diy}-->
  3.     <!--{/if}-->
  4.     <!--{if CURMODULE == 'topic' && $topic && empty($topic['useheader']) && !empty($_G['style']['tplfile']) && ($_G['group']['allowdiy'] || $_G['group']['allowaddtopic'] && $topic['uid'] == $_G['uid'] || $_G['group']['allowmanagetopic'])}-->
  5.         <a id="diy-tg" href="javascript:openDiy();" title="{lang open_diy}" class="y"><img src="{STATICURL}image/diy/panel-toggle.png" alt="DIY" /></a>
  6.     <!--{/if}-->

頁頭廣告調用代碼:放置於<div id="hd">上面

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

導航條當前位置獲取代碼,必須放置於logo代碼前面

  1. <!--{eval $mnid = getcurrentnav();}-->

二級導航調用代碼:放置於二級導航代碼後面

  1. <!--{ad/subnavbanner/a_mu}-->

頁頭搜索條代碼,根據本身模板的結構設計放到須要的位置便可

  1. <!--{subtemplate common/pubsearchform}-->

全局框架代碼,該代碼的閉合在footer.htm文件第一行</div>中

  1. <div id="wp" class="wp">

此外頁頭文件包含幾個插件嵌入點代碼,做爲一個完整的discuz模板,插件鉤子是必須存在的:

頂部導航左嵌入點:

  1. <!--{hook/global_cpnav_extra1}-->

頂部導航右嵌入點:

  1. <!--{hook/global_cpnav_extra2}-->

右上角登陸狀態嵌入點(我的設置前面):

  1. <!--{hook/global_usernav_extra1}-->

右上角登陸狀態嵌入點(退出按鈕前面):

  1. <!--{hook/global_usernav_extra2}-->

右上角登陸狀態嵌入點(第二行第一位):

  1. <!--{hook/global_usernav_extra3}-->



全局頁尾

頁尾文件路徑:template/default/common/footer.htm

頁尾文件擔負整個模板的重要的收尾工做,若是缺乏必須的代碼,一樣也會致使整個程序各個功能不能正常使用!


javascript

頁尾文件第一句(必須存在):

  1. </div>
  2. PS:這個閉合的標籤是頁頭文件的<div id="wp" class="wp">

站長推薦功能調用代碼:

  1. <!--{eval $focusid = getfocus_rand($_G[basescript]);}-->
  2.     <!--{if $focusid !== null}-->
  3.         <!--{eval $focus = $_G['cache']['focus']['data'][$focusid];}-->
  4.         <div class="focus" id="sitefocus">
  5.             <div class="bm">
  6.                 <div class="bm_h cl">
  7.                     <a href="javascript:;" onclick="setcookie('nofocus_$focusid', 1, $_G['cache']['focus']['cookie']*3600);$('sitefocus').style.display='none'" class="y" title="{lang close}">{lang close}</a>
  8.                     <h2><!--{if $_G['cache']['focus']['title']}-->{$_G['cache']['focus']['title']}<!--{else}-->{lang focus_hottopics}<!--{/if}--></h2>
  9.                 </div>
  10.                 <div class="bm_c">
  11.                     <dl class="xld cl bbda">
  12.                         <dt><a href="{$focus['url']}" class="xi2" target="_blank">$focus['subject']</a></dt>
  13.                         <!--{if $focus[image]}-->
  14.                         <dd class="m"><a href="{$focus['url']}" target="_blank"><img src="{$focus['image']}" alt="$focus['subject']" /></a></dd>
  15.                         <!--{/if}-->
  16.                         <dd>$focus['summary']</dd>
  17.                     </dl>
  18.                     <p class="ptn hm"><a href="{$focus['url']}" class="xi2" target="_blank">{lang focus_show} &raquo;</a></p>
  19.                 </div>
  20.             </div>
  21.         </div>
  22.     <!--{/if}-->

全局頁尾廣告代碼調用(必須存在):

  1. <!--{ad/footerbanner/wp a_f/1}--><!--{ad/footerbanner/wp a_f/2}--><!--{ad/footerbanner/wp a_f/3}-->
  2.     <!--{ad/float/a_fl/1}--><!--{ad/float/a_fr/2}-->
  3.     <!--{ad/couplebanner/a_fl a_cb/1}--><!--{ad/couplebanner/a_fr a_cb/2}-->
  4.     <!--{ad/cornerbanner/a_cn}-->

頁尾插件嵌入點:(必須存在!)

  1. <!--{hook/global_footer}-->

頁尾左框架版權信息(必須存在)

  1. <div id="frt">
  2.             <p>Powered by <strong><a href="http://www.discuz.net" target="_blank">Discuz!</a></strong> <em>$_G['setting']['version']</em><!--{if !empty($_G['setting']['boardlicensed'])}--> <a href="http://license.comsenz.com/?pid=1&host=$_SERVER[HTTP_HOST]" target="_blank">Licensed</a><!--{/if}--></p>
  3.             <p class="xs0">&copy; 2001-2011 <a href="http://www.comsenz.com" target="_blank">Comsenz Inc.</a></p>
  4.         </div>

頁尾有框架菜單、備案、執行時間、統計代碼

  1. <div id="flk" class="y">
  2.             <p>
  3.                 <!--{loop $_G['setting']['footernavs'] $nav}--><!--{if $nav['available'] && ($nav['type'] && (!$nav['level'] || ($nav['level'] == 1 && $_G['uid']) || ($nav['level'] == 2 && $_G['adminid'] > 0) || ($nav['level'] == 3 && $_G['adminid'] == 1)) ||
  4.                         !$nav['type'] && ($nav['id'] == 'stat' && $_G['group']['allowstatdata'] || $nav['id'] == 'report' && $_G['uid'] || $nav['id'] == 'archiver' || $nav['id'] == 'mobile'))}--><!--{if $nav['id'] == 'mobile' && $_G['setting']['mobile']['allowmobile'] != 1}--><!--{eval continue;}--><!--{/if}-->$nav[code]<span class="pipe">|</span><!--{/if}--><!--{/loop}-->
  5.                         <strong><a href="$_G['setting']['siteurl']" target="_blank">$_G['setting']['sitename']</a></strong>
  6.                 <!--{if $_G['setting']['icp']}-->( <a href="http://www.miitbeian.gov.cn/" target="_blank">$_G['setting']['icp']</a> )<!--{/if}-->
  7.                 <!--{hook/global_footerlink}-->
  8.                 <!--{if $_G['setting']['statcode']}-->$_G['setting']['statcode']<!--{/if}-->
  9.             </p>
  10.             <p class="xs0">
  11.                 {lang time_now}
  12.                 <span id="debuginfo">
  13.                 <!--{if debuginfo()}-->, Processed in $_G[debuginfo][time] second(s), $_G[debuginfo][queries] queries
  14.                     <!--{if $_G['gzipcompress']}-->, Gzip On<!--{/if}--><!--{if $_G['memory']}-->, <!--{echo ucwords($_G['memory'])}--> On<!--{/if}-->.
  15.                 <!--{/if}-->
  16.                 </span>
  17.             </p>
  18.         </div>

用戶活動信息記錄代碼(必須存在):

  1. <!--{eval updatesession();}-->
  2. PS:缺乏該代碼直接致使用戶在線時間等信息沒法記錄

用戶升級信息彈出層:(頁頭右上角用戶組鏈接彈出)

  1. <!--{if $upgradecredit !== false}-->
  2.         <div id="g_upmine_menu" class="tip tip_3" style="display:none;">
  3.             <div class="tip_c">
  4.                 {lang credits} $_G[member][credits], {lang thread_groupupgrade} $upgradecredit {lang credits}
  5.             </div>
  6.             <div class="tip_horn"></div>
  7.         </div>
  8.     <!--{/if}-->

用戶短消息、站點郵件發送觸發代碼(必須存在)

  1. <!--{if !$_G['setting']['bbclosed']}-->
  2.     <!--{if $_G[uid] && !isset($_G['cookie']['checkpm'])}-->
  3.     <script type="text/javascript" src="home.php?mod=spacecp&ac=pm&op=checknewpm&rand=$_G[timestamp]"></script>
  4.     <!--{/if}-->
  5.     <!--{if !isset($_G['cookie']['sendmail'])}-->
  6.     <script type="text/javascript" src="home.php?mod=misc&ac=sendmail&rand=$_G[timestamp]"></script>
  7.     <!--{/if}-->
  8. <!--{/if}-->

使用DIY功能時必須的腳本(必須存在):

  1. <!--{if $_GET['diy'] == 'yes'}-->
  2.     <!--{if (CURMODULE == 'topic' || $_G['group']['allowdiy']) && (empty($do) || $do != 'index') && !empty($_G['style']['tplfile'])}-->
  3.         <script type="text/javascript" src="{$_G[setting][jspath]}common_diy.js?{VERHASH}"></script>
  4.         <script type="text/javascript" src="{$_G[setting][jspath]}portal_diy.js?{VERHASH}"></script>
  5.     <!--{/if}-->
  6.     <!--{if $space['self'] && CURMODULE == 'space' && $do == 'index'}-->
  7.         <script type="text/javascript" src="{$_G[setting][jspath]}common_diy.js?{VERHASH}"></script>
  8.         <script type="text/javascript" src="{$_G[setting][jspath]}space_diy.js?{VERHASH}"></script>
  9.     <!--{/if}-->
  10. <!--{/if}-->

用戶提醒功能狀態變動(必須存在):

  1. <!--{if $_G['member']['newprompt'] && (empty($_G['cookie']['promptstate_'.$_G[uid]]) || $_G['cookie']['promptstate_'.$_G[uid]] != $_G['member']['newprompt']) && $_G['gp_do'] != 'notice'}-->
  2.     <script type="text/javascript">noticeTitle();</script>
  3. <!--{/if}-->

漫遊通知觸發代碼:(管理員下彈出漫遊通知)

  1. <!--{eval userappprompt();}-->

返回頂部浮動菜單

  1. <!--{if $_G['basescript'] != 'userapp'}-->
  2. <span id="scrolltop" onclick="window.scrollTo('0','0')">{lang scrolltop}</span>
  3. <script type="text/javascript">_attachEvent(window, 'scroll', function(){showTopLink();});</script>
  4. <!--{/if}-->

程序功能最後處理代碼(必須存在)

    1. <!--{eval output();}-->
    2. PS:僞靜態、模塊更新、Gzip等等
相關文章
相關標籤/搜索