日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
WordPress主題模板層次結(jié)構(gòu)指南

如果您想自定義主題或從頭開始構(gòu)建新主題,了解wordpress主題模板層次結(jié)構(gòu)的工作原理非常重要。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供南陵網(wǎng)站建設(shè)、南陵做網(wǎng)站、南陵網(wǎng)站設(shè)計(jì)、南陵網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、南陵企業(yè)網(wǎng)站模板建站服務(wù),十載南陵做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

首先,這個(gè)WordPress系統(tǒng)有助于保持一切井井有條。一旦您知道所有主題模板文件是什么、它們的作用以及它們的優(yōu)先級(jí)如何,您將能夠改變WordPress網(wǎng)站外觀的幾乎所有方面。

在本文中,我們將解釋W(xué)ordPress主題模板層次結(jié)構(gòu)是什么以及它是如何工作的。然后,我們將提供每種類型的WordPress頁面中涉及的模板文件的完整細(xì)分(包括供參考的備忘單),以幫助您充分利用它們。

WordPress模板層次結(jié)構(gòu)簡介

通常,非動(dòng)態(tài)網(wǎng)站使用靜態(tài)HTML和CSS文件來呈現(xiàn)其內(nèi)容。然而,WordPress是一個(gè)基于PHP編程語言的動(dòng)態(tài)平臺(tái)。每個(gè)WordPress站點(diǎn)都會(huì)加載多個(gè).php 文件,每個(gè)文件都控制特定部分或組件的外觀。

每當(dāng)您加載某種類型的頁面時(shí),內(nèi)容管理系統(tǒng) (CMS)都會(huì)查找與其對(duì)應(yīng)的模板文件。

例如,如果您使用WordPress的搜索功能并加載搜索結(jié)果頁面,CMS將查找兩個(gè)模板文件:

您有權(quán)訪問的模板文件取決于您使用的主題。所有WordPress主題 都是模板、樣式表和其他元素(例如圖像)的集合。所以在上面的例子中,如果你使用的主題包含一個(gè)search.php模板,WordPress 會(huì)找到并加載它。

在某些情況下,您可能會(huì)使用不包含要加載的頁面類型的模板文件的主題。這就是WordPress模板層次結(jié)構(gòu)的用武之地。它是一個(gè)內(nèi)置系統(tǒng),可以告訴 WordPress 要加載哪些模板文件以及以何種順序加載。

對(duì)于搜索頁面,如果WordPress找不到search.php文件,它將向下移動(dòng)到層次結(jié)構(gòu)中的下一個(gè)文件,即index.php。該 文件是模板層次結(jié)構(gòu)中每個(gè)分支的最終后備。

理論上,您可以擁有一個(gè)僅包含一個(gè)模板文件的功能齊全的主題,即index.php

但是,在實(shí)踐中,具有單個(gè)模板文件的主題幾乎不會(huì)包含任何樣式自定義,并且每種類型的頁面看起來都幾乎相同。除非這就是您的目標(biāo),否則了解WordPress模板層次結(jié)構(gòu)是您作為主題開發(fā)人員可以采取的最重要的步驟之一。

WordPress模板層次結(jié)構(gòu)如何工作

您可能知道,WordPress允許您根據(jù)要發(fā)布的內(nèi)容使用多種類型的頁面。您可以使用七個(gè)主要類別:

這些頁面中的每一個(gè)都有自己的自定義層次結(jié)構(gòu),這意味著它使用一組特定的模板文件。

如果您快速瀏覽任何主題的文件夾,您通常會(huì)發(fā)現(xiàn)一組模板文件。以下是博客文章主題目錄中列出的模板文件示例:

WordPress主題目錄中列出的模板文件

這是一個(gè)單一的文章頁面類型,這意味著它使用single.php文件作為頁面上主要內(nèi)容(博客文章本身)的模板。

此外,它對(duì)每個(gè)頁面元素都有一個(gè)單獨(dú)的模板文件,其中大部分你應(yīng)該一眼就能識(shí)別出來,包括:

  • Header
  • Footer
  • Comments
  • Sidebar

重要的是要理解,盡管每種頁面類型都有自己的層次結(jié)構(gòu),但它們也經(jīng)常共享通用模板文件,例如header.php 和footer.php。

如果您正在構(gòu)建自己的主題,這意味著您可以為每種類型的頁面創(chuàng)建自定義樣式,同時(shí)還可以構(gòu)建模板文件以重復(fù)使用。

您還可以為適用于某些頁面類型的側(cè)邊欄和頁腳等元素創(chuàng)建自定義模板文件。這種靈活性完全歸功于WordPress對(duì)模板的模塊化方法。

當(dāng)您切換主題時(shí),您看到的布局差異歸因于WordPress加載的新模板文件。子主題也在WordPress主題層次結(jié)構(gòu)中發(fā)揮作用,我們將很快討論。

在哪里找到和更改WordPress模板文件

.php文件可以包含PHP代碼和HTML標(biāo)記(所有這些都可以編輯)。因此,WordPress模板文件可以像您需要的那樣復(fù)雜。在許多情況下,WordPress使用的模板文件是它們管理的元素的函數(shù)集合。

舉個(gè)例子,這里快速瀏覽一下WordPress官方二〇二一主題使用的header.php模板文件:

二〇二一主題header模板文件

正如我們所提到的,每個(gè)WordPress主題都包含自己的一組模板文件。您可以通過文件傳輸協(xié)議 (FTP) 客戶端訪問網(wǎng)站根目錄中的文件夾來查看您的主題包含哪些模板文件。

這是以前的WordPress官方主題Twenty Twenty的樣子:

Twenty Twenty主題目錄和模板文件

默認(rèn)情況下,WordPress將加載位于主題主目錄(wp_content > Themes)或template-parts文件夾中的模板文件。

如果您計(jì)劃創(chuàng)建多個(gè)模板文件,我們建議您將主頁模板保留在主目錄中。對(duì)于更具體的模板文件,例如全角頁面或側(cè)邊欄布局,您可以使用子目錄。

掌握完整的WordPress模板層次結(jié)構(gòu)的最佳方法是通過備忘單。在這種情況下,我們將向您展示模板層次結(jié)構(gòu)的可視化概覽,由WordPress Codex提供:

WordPress模板層次結(jié)構(gòu)

WordPress Codex包含大量有關(guān)模板層次結(jié)構(gòu)的信息,因此我們建議為該資源添加書簽。現(xiàn)在,讓我們深入了解每種頁面類型及其使用的模板文件。

按頁面類型劃分的WordPress模板層次結(jié)構(gòu)細(xì)分

WordPress 使用七種主要類型的頁面。在本節(jié)中,我們將討論它們中的每一個(gè),并為您提供它們使用的模板文件的細(xì)分。讓我們從頭版開始。

首頁模板文件

您的WordPress主頁 是大多數(shù)用戶訪問您的網(wǎng)站時(shí)的第一站。實(shí)際上,從一個(gè)站點(diǎn)到另一個(gè)站點(diǎn)的首頁布局可能會(huì)有很大差異。

但是,對(duì)于基本的首頁,WordPress會(huì)按順序查找這三個(gè)模板文件:

如果您的主題不包含front-page.php模板文件,WordPress將默認(rèn)使用第二個(gè)選項(xiàng),依此類推。與往常一樣,index.php文件是WordPress沿模板決策樹制作的最后一站。

單個(gè)文章

單個(gè)WordPress文章使用單個(gè)文章模板層次結(jié)構(gòu)。對(duì)于每篇博文的主要內(nèi)容,WordPress會(huì)查找以下文件:

但是,如果您查看模板備忘單,您會(huì)注意到在某些情況下會(huì)出現(xiàn)更復(fù)雜的層次結(jié)構(gòu)。

這是因?yàn)閃ordPress允許您為單個(gè)文章和單個(gè)類別指定模板文件,如果找不到這些選項(xiàng)中的任何一個(gè),則默認(rèn)為single.php 。

除了主模板文件之外,您還有諸如header, footer, sidebars和comments等元素。正如我們之前提到的,這些元素中的每一個(gè)都可以有自己的模板文件。

單頁

發(fā)布后,單頁是大多數(shù)WordPress網(wǎng)站的生計(jì)。在大多數(shù)情況下,它們使用與您的首頁不同的模板,除非兩種類型的頁面都默認(rèn)為index.php。

以下是單頁模板層次結(jié)構(gòu)的外觀:

盡管單個(gè)文章和頁面的模板層次結(jié)構(gòu)相似,但存在一些關(guān)鍵差異。

首先,當(dāng)涉及到頁面時(shí),WordPress使用自定義文件的get_page_templates() path,您可以使用它來更改或重定向默認(rèn)頁面模板。

此外,您可以為特定的slug和 ID創(chuàng)建模板。如果您有page-{slug}.phppage-{id}.php文件,WordPress 將嘗試按順序加載每個(gè)文件,然后默認(rèn)為page.php。

自定義文章類型

您可以為您可能不想與頁面或帖子捆綁的各種內(nèi)容創(chuàng)建自定義文章類型。自定義文章類型為您的內(nèi)容提供了更高程度的組織,并且它們還具有自己的模板層次結(jié)構(gòu):

自定義文章類型的模板層次結(jié)構(gòu)不像整頁或文章那樣復(fù)雜。但是,WordPress允許您為每種自定義文章類型創(chuàng)建模板文件,因此它們不必共享相同的確切布局。

搜索結(jié)果頁面

我們已經(jīng)向您介紹了WordPress用于搜索結(jié)果頁面的模板層次結(jié)構(gòu),因此讓我們簡要回顧一下它的外觀:

隨著我們遠(yuǎn)離諸如文章或首頁等“復(fù)雜”頁面類型,WordPress模板層次結(jié)構(gòu)變得更加簡單。

對(duì)于搜索頁面,您通常不需要在結(jié)果本身之外包含太多元素。結(jié)構(gòu)越簡單,層次結(jié)構(gòu)通常越短。

類別和標(biāo)簽頁

盡管許多網(wǎng)站不直接鏈接到它們,但WordPress會(huì)為您的標(biāo)簽和類別生成集合頁面。taxonomy中的每個(gè)項(xiàng)目也有特定的子頁面。

考慮到具有大型內(nèi)容庫的網(wǎng)站的分類法可能變得多么復(fù)雜,這種層次結(jié)構(gòu)涉及比平常更多的“步驟”:

請注意,標(biāo)簽使用相同的層次結(jié)構(gòu),除了在所有實(shí)例中“標(biāo)簽”替換“類別”。

理論上,您可以為WordPress網(wǎng)站上的每個(gè)類別或標(biāo)簽創(chuàng)建單獨(dú)的模板文件,并通過slug或ID識(shí)別它們。然而,很少有網(wǎng)站真正經(jīng)歷過所有這些麻煩。

如果您不打算讓訪問者瀏覽您的類別頁面,請隨意默認(rèn)使用archive.php模板。

404錯(cuò)誤頁面

有時(shí),訪問者會(huì)嘗試訪問不存在的頁面。發(fā)生這種情況時(shí),WordPress將返回404錯(cuò)誤頁面。

默認(rèn)情況下,WordPress不提供自定義此頁面外觀的選項(xiàng)。但是,您可以通過模板文件自己調(diào)整它的外觀。模板層次結(jié)構(gòu)相當(dāng)短:

隨著您網(wǎng)站的增長,用戶可能會(huì)遇到404錯(cuò)誤的實(shí)例也會(huì)隨之增長。針對(duì)這些情況使用自定義錯(cuò)誤頁面可以幫助您告知訪問者頁面未加載的原因,將他們指向另一個(gè)方向,并減少挫敗感。

加載404模板文件時(shí),WordPress會(huì)在使用默認(rèn)文件之前查找并加載您的自定義文件。

子主題適合WordPress模板層次結(jié)構(gòu)的位置

如果您喜歡自定義WordPress主題,最佳做法是使用子主題。子主題在WordPress模板層次結(jié)構(gòu)中也占有一席之地,但如果您查看我們之前提供的備忘單,它并不明顯。

簡而言之,使用子主題會(huì)為您使用的任何頁面類型在模板層次結(jié)構(gòu)中添加第二層。

假設(shè)您正在使用包含單個(gè)頁面的自定義模板文件的子主題。以下是WordPress嘗試加載文件的順序:

如果WordPress可以在您的子主題中找到模板文件的版本,那么它將加載該版本,即使在父主題中有對(duì)應(yīng)的模板文件也是如此。在某些情況下,您可能會(huì)發(fā)現(xiàn)自己想要為您使用的主題自定義模板文件,并且在這些情況下利用子主題是完美的。

與其他類型的自定義一樣,當(dāng)您更新主題模板文件時(shí),您將丟失對(duì)它的更改。通過子主題添加這些更改將使您擺脫這種情況。

使用WordPress模板標(biāo)簽進(jìn)行主題開發(fā)

在WordPress開發(fā)中,您經(jīng)常會(huì)遇到模板標(biāo)簽,這是您可以用來動(dòng)態(tài)生成和獲取數(shù)據(jù)的PHP函數(shù)。模板標(biāo)簽通常是模板文件的一部分,但它們不可互換。

WordPress在其代碼中構(gòu)建了數(shù)十個(gè)模板標(biāo)簽,您可以在主題開發(fā)中使用這些標(biāo)簽。一些例子包括:

  • get_header()
  • get_footer()
  • get_sidebar()
  • get_search_form()
  • 獲取模板部分()

這些標(biāo)簽使您能夠從您正在使用的主題中收集模板文件。實(shí)際上,這意味著您可以將特定元素添加到主模板文件,例如front-page.phpindex.php。

如果您想要一份可以在WordPress開發(fā)中使用的所有模板標(biāo)簽的完整列表,請查看WordPress Codex。

在那里,您將找到有關(guān)如何使用每個(gè)模板標(biāo)記、它們的各個(gè)參數(shù)以及實(shí)際代碼示例的說明。

小結(jié)

盡管WordPress模板層次結(jié)構(gòu)乍一看可能看起來很復(fù)雜,但它歸結(jié)為一系列簡單的決策樹。每當(dāng)您訪問WordPress網(wǎng)站時(shí),CMS都會(huì)查看您嘗試訪問的頁面類型,然后使用層次結(jié)構(gòu)來確定要加載的模板文件。

除了每種頁面類型的主要模板之外,您還可以為單獨(dú)的元素(例如頁眉、頁腳和側(cè)邊欄)提供模板文件。

這種模塊化方法使您可以完全控制網(wǎng)站上每個(gè)頁面的外觀,并幫助您在WordPress開發(fā)過程中節(jié)省時(shí)間。


分享名稱:WordPress主題模板層次結(jié)構(gòu)指南
分享地址:http://www.dlmjj.cn/article/cdicgpg.html