什么是子主題,為什么如此重要?在本文中,我們將為您提供這些問題的答案,并逐步向您展示如何使用插件或代碼創(chuàng)建和自定義自己的子主題。
如果您想更改WordPress網(wǎng)站的主題,您可能已經(jīng)看到有人告訴您使用WordPress子主題。

但是什么是子主題,為什么子主題如此重要?
在這篇文章中,我們將通過介紹子主題以及它們?nèi)绾问鼓芤妫瑸槟獯疬@些問題。
然后,我們將逐步向您展示如何使用插件或代碼創(chuàng)建和自定義自己的子主題。
讓我們開始吧!
什么是WordPress子主題?
WordPress子主題不是獨(dú)立主題。它是現(xiàn)有父主題的“兒子”,因此而得名。
您將在父主題旁邊安裝它,它使您可以安全地更改父主題,而無需編輯父主題本身。
子主題將從父主題中提取大部分/所有設(shè)計(jì)設(shè)置。但是,在對(duì)子主題進(jìn)行更改的情況下,該更改將覆蓋父主題中的設(shè)置。
子主題的優(yōu)勢(shì)
此時(shí),您可能想知道為什么不能僅直接對(duì)父主題進(jìn)行更改?
這樣做不是一個(gè)好主意的主要原因是主題更新。
如果要保持WordPress網(wǎng)站的安全和運(yùn)行良好,則需要在發(fā)布時(shí)及時(shí)應(yīng)用更新,包括主題更新。
如果您通過直接編輯主題(不包含子主題)來自定義網(wǎng)站,則意味著每次更新主題時(shí),您將覆蓋所有更改。
這意味著您要么:
- 更新主題并失去之前的修改。不是很有趣的經(jīng)歷,對(duì)不對(duì)?
- 不要更新主題,以免丟失之前的修改……這不利于網(wǎng)站的安全性和功能。
使用WordPress子主題,您可以對(duì)子主題進(jìn)行所有更改。然后,您將能夠更新父主題,而不會(huì)丟失任何工作。
除了幫助您安全更新之外,使用子主題通常也可以方便地進(jìn)行自定義。因?yàn)樗梢詫⑺懈募性谝粋€(gè)位置,所以很容易跟蹤所有編輯并根據(jù)需要進(jìn)行調(diào)整。
這也使得反轉(zhuǎn)很容易。例如,如果要停止使用編輯并返回到父主題,則只需禁用子主題即可。
默認(rèn)情況下,某些現(xiàn)成的WordPress主題甚至使用此父/子主題的方法。例如,如果要使用Genesis Framework,則需要父主題(基本框架)和子主題來控制設(shè)計(jì)。
何時(shí)使用子主題
除了下面將列出的一些例外情況之外,如果您打算對(duì)現(xiàn)有的WordPress主題進(jìn)行自己的編輯,則應(yīng)始終使用子主題。
通常,每當(dāng)您自定義WordPress主題時(shí),最好使用子主題。
但是,該規(guī)則有一些例外,即可能有比使用子主題更好的選擇。
首先,如果您只想進(jìn)行一些小的CSS修改,那么只為進(jìn)行一些調(diào)整而創(chuàng)建子主題可能是過大的選擇。
相反,您可以使用WordPress Customizer定制器中內(nèi)置的其他CSS功能添加自定義CSS 。或者,您可以使用免費(fèi)插件,例如Tom Usborne的Simple CSS plugin。
其次,如果要進(jìn)行獨(dú)立于主題的更改,則子主題可能不是最佳選擇。
例如,如果要注冊(cè)自定義分類法或自定義文章類型,則可能不想使用子主題的functions.php文件(因?yàn)榧词骨袚Q主題也要保留這些功能)。相反,您應(yīng)該只使用插件(如代碼片段)或您自己的自定義插件將插件完全添加到主題之外。
如何創(chuàng)建WordPress子主題
既然您知道子主題為何如此重要,那么讓我們開始了解如何為WordPress網(wǎng)站創(chuàng)建子主題。
如果您的主題還沒有子主題,則可以通過兩種方式為任何WordPress主題創(chuàng)建子主題:
- 使用免費(fèi)的WordPress子主題生成器插件。
- 手動(dòng)創(chuàng)建自己的子主題。
我們將向您展示如何執(zhí)行這兩種方法。
如何使用WordPress子主題插件
子主題生成器插件可讓您創(chuàng)建子主題,而無需離開WordPress儀表板。
這里最受歡迎的選項(xiàng)是免費(fèi)的Child Theme Configurator插件,該插件在超過300,000個(gè)站點(diǎn)上安裝。
Child Theme Configurator不僅可以幫助您創(chuàng)建基本的子主題文件,而且還可以掃描您正在使用的任何主題,并根據(jù)需要排隊(duì)主題和字體樣式表。
如果要在已經(jīng)添加了內(nèi)容的網(wǎng)站上創(chuàng)建子主題,它還包括其他有用的功能。例如,它可以將現(xiàn)有的小工具和“定制程序”選項(xiàng)復(fù)制到子主題。
但是,如果您打算在實(shí)時(shí)網(wǎng)站上使用該插件,我們建議您先進(jìn)行完整備份,然后再繼續(xù)。或者,最好在暫存站點(diǎn)上進(jìn)行所有設(shè)置。
一旦準(zhǔn)備好備份,就可以從WordPress.org安裝并激活免費(fèi)的Child Theme Configurator插件開始。然后,轉(zhuǎn)到工具→子主題以創(chuàng)建您的子主題。
在“選擇父主題”下拉列表中,選擇要為其創(chuàng)建子主題的主題。然后,單擊分析:

然后,插件將分析您的父主題是否存在任何依賴關(guān)系。
完成此操作后,您將看到一些其他選項(xiàng)來配置如何創(chuàng)建子主題。如果不確定特定設(shè)置的含義,可以將其保留為默認(rèn)設(shè)置:

完成選擇之后,請(qǐng)點(diǎn)擊底部的按鈕以創(chuàng)建新的子主題。
就是這樣!然后,該插件將為您創(chuàng)建子主題。但是,它不會(huì)激活子主題。
要激活它:
- 轉(zhuǎn)到外觀→主題。
- 預(yù)覽帶有子主題的網(wǎng)站的外觀(以確保其正常工作-如果您的網(wǎng)站看起來很奇怪,則可能是因?yàn)镃SS問題)。
- 像激活其他任何WordPress主題一樣激活您的子主題。但是,請(qǐng)確保保留您的父主題。

激活了子主題之后,“子主題配置器”插件還將包括一些其他有用的工具來幫助您管理子主題。例如,如果轉(zhuǎn)到插件設(shè)置的“文件”選項(xiàng)卡,則可以查看父主題和子主題中的所有關(guān)聯(lián)文件。
然后,您可以將文件從父主題復(fù)制到子主題。
例如,如果要對(duì)single.php進(jìn)行一些編輯,則可以將該文件復(fù)制到子主題中,以便可以安全地對(duì)其進(jìn)行編輯:

您還將找到許多其他工具來幫助您使用CSS。
我們稍后將介紹為什么這些工具很有用。
如何手動(dòng)創(chuàng)建子主題
在本節(jié)中,我們假設(shè)您對(duì)PHP和CSS有所了解。如果您不滿意此處的說明,我們建議您堅(jiān)持使用上一節(jié)中提供的免費(fèi)插件。
要手動(dòng)創(chuàng)建子主題,您需要?jiǎng)?chuàng)建兩個(gè)文件(這些是子主題的最低要求):
- style.css –首先,您需要添加的只是一些css代碼。
- functions.php –這使您可以從父主題中引入樣式表。沒有這個(gè),您的子主題將無法應(yīng)用父主題的CSS,這將使您的網(wǎng)站看起來非常難看!
style.css
首先,創(chuàng)建一個(gè)名為style.css的文件并添加以下代碼:
/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/
確保用您的實(shí)際信息替換冒號(hào)后面的所有內(nèi)容:
- Theme Name – 您的子主題的名稱。
- Theme URI – 您的主題及其文檔的網(wǎng)站。
- Description – 主題的簡(jiǎn)短說明。
- Author – 主題作者的名字。
- Author URI –主題作者的網(wǎng)站。
- Template – 父主題文件夾的名稱(與wp-content/themes文件夾中的名稱相同)。這是最重要的一行,因?yàn)槿绻麤]有此主題,子主題將無法正常工作。
- Version – 您的子主題的版本號(hào)。
- Text Domain – 用于國(guó)際化。您可以僅在模板名稱的末尾附加“-child”。
- License – 保留默認(rèn)值。
- License URI –保留默認(rèn)值。
除了Template行之外,您輸入的內(nèi)容并不重要,因此不要過分強(qiáng)調(diào)。只要確保正確輸入Template 父主題的文件夾名稱即可。
如果將來要添加自己的自定義樣式,可以將其添加到樣板代碼下面的此樣式表中。
functions.php
接下來,您需要為您的子主題創(chuàng)建functions.php文件。同樣,這是讓您從父主題中引入完整CSS樣式表的原因。
在functions.php文件中,添加以下代碼:
<?php
/* Function to enqueue stylesheet from parent theme */
function child_enqueue__parent_scripts() {
wp_enqueue_style( 'parent', get_template_directory_uri().'/style.css' );
}
add_action( 'wp_enqueue_scripts', 'child_enqueue__parent_scripts');
將文件上傳到WordPress網(wǎng)站
擁有style.css文件和functions.php文件后,您需要將它們作為新主題上傳到WordPress網(wǎng)站。
為此,請(qǐng)使用FTP連接到您的WordPress網(wǎng)站。
然后,瀏覽到站點(diǎn)的主題目錄(wp-content/themes),并為您的子主題創(chuàng)建一個(gè)新文件夾。
例如,如果父主題的文件夾是hello-elementor,則可以命名子主題文件夾 hello-elementor-child來幫助您記住它。
然后,將您的style.css和functions.php文件上傳到該文件夾??中:

上傳兩個(gè)文件后,您可以轉(zhuǎn)到外觀→主題并激活您的子主題,就像其他任何WordPress主題一樣。
如何安裝WordPress子主題
我們?cè)谏厦娴奶囟ǚ椒ㄖ姓劦搅似渲械囊恍﹥?nèi)容,但讓我們?cè)俅翁接懭绾伟惭bWordPress子主題。
如果您是從主題開發(fā)者那里下載預(yù)制的子主題,而不是自己創(chuàng)建,則這也將非常有用。
您可以像安裝其他任何WordPress主題一樣安裝WordPress子主題:
- 轉(zhuǎn)到WordPress儀表板中的外觀→主題。
- 單擊添加新。
- 上傳您的子主題的ZIP文件。
在安裝過程中,WordPress將檢測(cè)到您正在上傳子主題,并檢查以確保父主題存在:

上傳文件后,請(qǐng)確保激活它。
請(qǐng)記住,為了讓您的子主題的工作,你需要同時(shí)安裝父主題和子主題。然后激活子主題,同時(shí)保留父主題(不能刪除)。
它應(yīng)該是這樣的:
- 子主題是激活的主題
- 父主題仍已安裝,但未激活

如何自定義子主題
與自定義常規(guī)WordPress主題一樣,您可以使用多種選項(xiàng)來“自定義”子主題。
準(zhǔn)確地說,您并不是在真正自定義子主題,而是在使用子主題自定義現(xiàn)有主題(父主題)。
首先,我們將向您展示一些使用代碼自定義子主題的方法。然后,我們將分享一種使用Elementor Theme Builder定制主題的更簡(jiǎn)單方法。
使用代碼自定義子主題
如果要使用代碼自定義子主題,則需要具有CSS,HTML和PHP的良好使用知識(shí)。
您可以執(zhí)行以下操作:
添加自定義CSS
要使用CSS自定義子主題,可以將CSS直接添加到子主題的style.css文件中。
在文件頂部現(xiàn)有代碼下方添加CSS。
只要您使用相同的選擇器,添加到子主題的任何CSS都會(huì)覆蓋父主題。
覆蓋現(xiàn)有模板
如果要覆蓋父主題的模板,則可以:
- 將模板文件從父主題復(fù)制到子主題。
- 在您的子主題中編輯模板文件。
例如,如果要編輯single.php,則應(yīng)首先將single.php文件從父主題復(fù)制到子主題(請(qǐng)確保保留相同的目錄結(jié)構(gòu),如果適用)。
然后,您可以在子主題的single.php版本中編輯代碼。
注意:只要名稱相同,WordPress就會(huì)使用子主題中的模板。因此,您實(shí)際上是在“覆蓋”父主題中的現(xiàn)有模板。
如果您使用上面提到的Child Theme Configurator插件,它可以幫助您將文件復(fù)制到您的child主題,而無需離開WordPress儀表板。
添加新模板
除了復(fù)制和編輯父主題的現(xiàn)有模板之外,您還可以在子主題中創(chuàng)建新的自定義模板。
例如,如果要為添加的自定義文章類型創(chuàng)建模板,則可以將該模板添加到子主題中。
拓展閱讀:使用WordPress的子主題功能修改你的WordPress主題
使用Elementor Theme Builder自定義子主題
注:如果您的父主題是使用 Elementor 可視化編輯器的,并且你使用的是收費(fèi)版的 Elementor Pro,那可以通過它的 Theme Builder 功能來自定義子主題,否則,你可以跳過這個(gè)部分的內(nèi)容,繼續(xù)往下看。
如果您不熟悉,Elementor Theme Builder可讓您使用可視化的拖放界面自定義部分或全部WordPress主題。
使用Elementor Pro和Theme Builder,您可以為網(wǎng)站的以下網(wǎng)站創(chuàng)建自定義模板:
- 頁(yè)眉
- 頁(yè)腳
- 單個(gè)貼子(例如,單個(gè)博客文章或頁(yè)面)
- 存檔(例如,列出您所有博客文章的頁(yè)面)
這些模板可與您的子主題和父主題一起使用。
使用Elementor Theme Builder,您無需直接使用代碼。無需添加自定義CSS或復(fù)制PHP模板文件-您只需拖放即可完成所有操作。
例如,假設(shè)您要自定義子主題的頁(yè)眉。無需將header.php文件復(fù)制到子主題然后編輯PHP,只需使用Elementor的可視化拖放界面設(shè)計(jì)一個(gè)新的頁(yè)眉即可。然后,您可以將該頁(yè)眉應(yīng)用于網(wǎng)站上的任何地方,也可以僅應(yīng)用于網(wǎng)站的特定部分。
如果您不了解CSS,HTML和PHP,則這種無需代碼的方法使您仍然可以自定義子主題。即使這樣做,與嘗試直接在模板文件中使用PHP相比,這種可視化方法仍可以節(jié)省大量時(shí)間。
使用Elementor Theme Builder創(chuàng)建新模板時(shí),將可以選擇模板的類型。例如,頁(yè)眉/Header。

然后,您可以從空白開始,也可以選擇Elementor Pro的預(yù)制模板之一:

從那里,您可以使用拖放和側(cè)邊欄選項(xiàng)來控制頁(yè)眉的外觀:

完成后,您可以精確選擇要使用此頁(yè)眉模板的位置:

要了解更多信息,請(qǐng)查看Elementor Theme Builder可以做的所有事情。
如何刪除WordPress子主題
如果您想停止使用子主題,可以像常規(guī)WordPress主題一樣停用它:
- 轉(zhuǎn)到外觀→主題。
- 激活另一個(gè)主題。父主題或全新的WordPress主題。
請(qǐng)記住 – 如果您停用子主題并返回到父主題,那么通過子主題添加的所有更改將不再存在。
相反,您將回到父主題的設(shè)計(jì)。
立即開始使用WordPress子主題
WordPress子主題可幫助您安全地更改WordPress主題。
您的子主題將從其父主題繼承所有樣式,但是您對(duì)子主題所做的任何更改都將覆蓋父主題。這意味著您可以安全地更新父主題,而不會(huì)丟失對(duì)子主題所做的更改。
要開始使用WordPress子主題,您可以:
- 檢查主題的開發(fā)人員是否已經(jīng)提供了預(yù)制的子主題。如果您正在使用Hello Elementor,則可以從GitHub下載該主題的子主題。
- 使用免費(fèi)的Child Theme Configurator插件。
- 手動(dòng)創(chuàng)建您的子主題。
從那里,您可以使用CSS、HTML和PHP自定義子主題。或者,您可以跳過代碼,并使用Elementor Theme Builder使用可視化的拖放界面自定義主題。
您還對(duì)使用WordPress子主題還有任何疑問嗎?在評(píng)論部分讓我們知道,我們將盡力提供幫助!
注:本文內(nèi)容出自 elementor.com,由 WordPress大學(xué) 翻譯整理。
繼續(xù)閱讀:
- 如何在WordPress子主題中覆蓋父主題的函數(shù)功能
- 使用WordPress的子主題功能修改你的WordPress主題
- WordPress一鍵創(chuàng)建子主題的插件:Orbisius Child Theme Creator
- 實(shí)例講解 WordPress 自定義文章類型
- 使用 Custom Post Type UI 添加自定義文章類型、類別
- WordPress 修改自定義文章類型的固定鏈接結(jié)構(gòu)




