WordPress模板層次07:header.php
在index.PHP之後,我們將看的下一個檔案是header.php。這裡我們將重點講解這2個函式,wp_head(),它用於動態載入css和js程式碼,body_class(),它用於提供許多有用的頁面資訊。
get_header()函式
在index.php檔案中,可以看到頂部的這個get_header函式會自動呼叫任何名為hearer.php的檔案。
<?php get_header(); ?>/***自動呼叫header.php***/
<div class="container" role="main">
WordPress約定:get_header()函式將呼叫header.php。
因此,所有網站的頁頭部分的程式碼,都將放在header.php檔案中。
header.php
header.php完整檔案如下:
<!DOCTYPE html>/***宣告文件型別***/
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title><?php wp_title('|', true, 'right'); ?><?php echo get_bloginfo('name'); ?></title> /***一些常用的WordPress模板標籤(wp_title/get_bloginfo)***/
<?php wp_head(); ?>/***wp_head()允許WordPress以及任何其他外掛,在這裡放置任何CSS,Javascript所需的程式碼***/
</head>
<body <?php body_class(); ?>>/***body_class()函式會根據網站所處的頁面,將專用程式碼,作為body標籤中的class輸出***/
<div class="navbar navbar-default" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="<?php bloginfo('url'); ?>"><?php bloginfo('name'); ?></a>
</div>
<div class="collapse navbar-collapse">
<?php
$args = array(
'menu' => 'header-menu',
'menu_class' => 'nav navbar-nav',
'container' => false
);
wp_nav_menu( $args );/***包含主選單***/
?>
</div>
</div>
</div>
wp_head()函式
WordPress並沒有像通常的建立靜態網站那樣,直接連結到我們的CSS和JavaScript檔案。而是在functions.php檔案的內部,通過wp_enqueue_script來載入所有的JavaScript和CSS檔案。
所以,要成功引入CSS和JavaScript檔案,就需要在關閉head標籤之前,呼叫wp_head函式。
body_class()函式
body_class()函式位於body標籤內。這個函式會根據你在網站上的所處頁面,將專用程式碼,作為body標籤中的class輸出。
例如,開啟Home頁面,右鍵檢視網頁原始碼,並找到body標籤:
You must be logged in to view the hidden contents.
可以看到class為page-template-default,page,page-id-113,login-in,admin-bar,customize-support。
如果切換到”About”頁面,右鍵檢視網頁原始碼,並找到body標籤,可以看到不同的是:page-id-115。
所以,隨著學習的深入,body_class()函式將提供許多超級有用的資訊,我們可以使用它來識別當前所使用的頁面,以及正在使用的模板或者其他一些資訊。這對於前端和後端WordPress的開發都是非常有用的。
所以,當你編寫你的主題時,確保你在body標籤裡面包含PHP的body_class()模板標籤。
wp_nav_menu()函式
header檔案的內部通常還需要包含主選單。由於header檔案中的所有內容都顯示在每個頁面上,因此在此標頭檔案中包含頂部選單是有意義的。
wp_nav_menu()函式是WordPress中的選單時通常會用到的函式。我們將會在主題開發實戰課程中,深入的學習該函式。
相關文章
- WordPress模板層次02:模板層次結構和原理
- WordPress模板層次15:歸檔模板
- WordPress模板層次01:模板檔案
- WordPress模板層次08:footer.phpPHP
- WordPress模板層次17:404.phpPHP
- WordPress模板層次06:index.phpIndexPHP
- WordPress模板層次16:搜尋模板search.phpPHP
- WordPress主題模板層次和常用模板函式函式
- WordPress模板層次09:sidebar.phpIDEPHP
- WordPress模板層次13:comments.phpPHP
- WordPress模板層次12:single.phpPHP
- WordPress模板層次03:模板檔案中常見程式碼
- WordPress模板層次05:style.css樣式表CSS
- WordPress模板層次04:建立一個示例主題網站網站
- WordPress模板常用函式函式
- Django模板層Django
- Django 模板層Django
- WordPress模板常用函式彙總函式
- WordpressCMS主題開發02-製作頂部header.php和footer.phpHeaderPHP
- django的模板層Django
- WordPress入門07-WordPress新建頁面和管理頁面
- WordPress輕擬物NiRvana模板原始碼原始碼
- wordpress模板修改及函式說明函式
- 007模板語法
- 易優CMS模板標籤if條件判斷多層次判斷
- WordPress電影主題Zmovie模板原始碼原始碼
- WordPress開發入門05:模板標籤
- WordPress柒比貳B2模板原始碼原始碼
- 一整套WordPress模板製作的教程
- 商業智慧的三個層次,你在哪個層次?
- django-模板層基礎2Django
- 簡述OSI七個層次與TCP/IP四個層次TCP
- wordpress 輸出呼叫當前模板檔案的路徑
- 層次分析小案例
- 層次分析法
- 機器學習 之 層次聚類機器學習聚類
- 分析index降低索引層次Index索引
- Oracle層次化查詢Oracle