本文將展示 WordPress 主題文件執行層次結構。簡而言之,我們將了解當您在 WordPress 中加載頁面時會提供哪些文件。您可能已經知道詳細信息帖子由 single.php 提供,詳細信息頁面由 page.php 提供,但 WordPress 會根據各種因素搜索不同的文件,因此我們將看看它是如何工作的! p>
我們首先應該確定的是:如果沒有index.php和style.css,你的主題就不再是有效的WordPress主題…所以這是有道理的如果您只有這兩個文件,那么您嘗試加載的每個頁面都將由index.php 提供。快速瀏覽一下這個“備忘單”,看看我指的是什么:
請注意,每種頁面類型的流程將以 index.php 結束。這就是為什么 index.php 是 WordPress 主題所需文件的原因。如果我們缺少 WordPress 主題中的任何其他文件(例如,如果主題中沒有包含“search.php”文件),則將提供 index.php。
現在讓我們看一下有關執行順序的一些細節。我將向您展示 WordPress 在活動主題文件夾中搜索文件的流程。我希望這對您從現在開始創建 WordPress 主題時有用:
我將一一瀏覽每種類型的文件,并顯示相同文件的執行層次結構。
主頁
這是任何網站的第一個也是最重要的頁面。所以WordPress提供了自定義頁面的范圍。讓我們看一下主頁的文件層次結構。
- front-page.php
- home.php
- index.php
在提供主頁時,WordPress 將搜索 front-page.php。如果沒有找到,它將使用 home.php。如果 home.php 存在,它將使用它。如果沒有,它將默認使用index.php。
WordPress 帖子詳細信息
- single-[帖子類型].php
- single.php
- index.php
WordPress 可以擁有我們需要的任意數量的帖子類型。因此,這將更容易為所有/某些帖子類型獲得不同的設計。默認情況下,“post”是 WordPress 的主要且默認的帖子類型。
例如,如果您的自定義帖子類型是產品,那么它將是single-product.php
要了解如何在 WordPress 中添加新帖子類型的更多信息,您可以參考此鏈接。
WordPress 頁面詳細信息
- [自定義模板].php
- 頁面-[slug].php
- 頁面-[id].php
- page.php
- index.php
與帖子類型一樣,我們可以使用自定義頁面模板擁有不同的頁面布局。因此 WordPress 首先搜索所選頁面模板的文件(如果存在)。
如果沒有找到,則會搜索當前頁面slug的文件。基本上,如果 slug 是 aboutus,那么它將在活動主題文件夾中搜索文件 page-aboutus.php。
WordPress 將搜索帶有 ID 的文件,就像搜索帶 slug 的文件一樣。
類別頁面
- 類別-[slug].php
- 類別-[id].php
- 類別.php
- archive.php
- index.php
從上面的流程中,您可以了解如何為類別頁面使用不同的模板。例如,您可以有一個基于 slug 和 id 的自定義頁面,然后對其余類別使用默認的“category.php”文件。
標簽頁
- 標簽-[slug].php
- 標簽-[id].php
- 標簽.php
- archive.php
- index.php
這將與類別相同。您還可以為標簽 slug 和標簽 id 設置不同的頁面。
分類頁面
- 分類-[稅]-[術語].php
- 分類-[稅].php
- taxonomy.php
- archive.php
- index.php
這里是分類頁面的不同文件層次結構。
作者頁面
- 作者-[作者昵稱].php
- 作者-[作者 ID].php
- 作者.php
- archive.php
- index.php
在這里你會知道你也可以根據用戶有不同的設計。與類別和標簽相同,我們可以根據用戶的 slug 和 ID 擁有不同的文件。
附件頁
- [mime 類型].php
- 附件.php
- single.php
- index.php
在這里您可以看到,不同類型的附件可以有不同的頁面布局。這些可以與附加文件的 MIME 類型區分開來。
日期頁面
- date.php
- archive.php
- index.php
對于特定于日期的布局,我們可以在主題文件夾中創建 date.php。然后流程轉到 archive.php,最后轉到 index.php。
存檔頁面
- archive.php
- index.php
當我們向下了解文件類型時,層次結構中的文件數量會減少。這是基本文件,或者我們可以說是任何 WordPress 主題中最常用的文件。
搜索頁面
- 搜索.php
- index.php
您可以先使用 search.php 自定義搜索結果。如果 search.php 不可用,則將提供 index.php。
404頁面
- 404.php
- index.php
如果未找到頁面或帖子,WordPress 將搜索 404.php,如果未找到,則將提供 index.php。
結論
顯然,您可以通過多種方式使用此信息來加載各種頁面的自定義模板…在許多情況下,即使您使用現有主題,您也可以獲得自定義解決方案,而無需修改現有主題文件。您只需要創建新文件并使用上面的信息為其指定一個新名稱。
分享您的想法以及可以包含在層次結構上方的任何其他文件。