WordPress 子主题的终极指南
已发表: 2016-03-08您是否曾经为您的网站找到一个接近完美的 WordPress 主题,但由于一个您无法忽视的微小、令人伤脑筋的设计元素而决定不使用它? 可能是字体样式、调色板或设计元素的位置?
WordPress 主题市场充斥着许多免费和高级主题,但如果没有聘请开发人员为您的网站创建量身定制的主题,您几乎不可能找到一个完美到最后一个像素的主题。
WordPress 子主题使网站管理员能够一直修改主题文件,同时保持其核心功能到位,而不会在每次更新主题时丢失修改的风险。 它们使您能够修改主题的外观,从按钮上的号召性用语到完全改变每一个设计元素。
在本文中,我们将涵盖您需要了解的有关儿童主题的所有信息,从它们是什么到它们为何如此重要。 我们将总结一个关于如何在您自己的 WordPress 网站上使用子主题的教程——正确的方法。
听起来不错? 让我们开始吧!
WordPress 子主题:基础知识
子主题是独立的主题,它们主动继承父主题的功能。 激活子主题后,WordPress 将检查它是否编码了某些特定功能。 子主题的功能会覆盖父主题的功能,这意味着子主题的功能将应用于您的网站。 但是,如果该功能不存在,它会查看父文件并使用在那里编码的文件。
在简单的英语中,子主题是重复的主题文件,每次您觉得需要修改设计方面或某些功能时,您都可以将其编辑到子主题的文件中。 这是一个很棒的功能,因为它使网站管理员可以更改主题,而不必担心弄乱原始文件。
现在大多数 WordPress 主题都带有开箱即用的子主题(或子主题的变体)。
为什么要使用子主题?
通过子主题对您的主题进行修改和更改是一种被广泛接受(并推荐)的最佳实践。 这样想:如果你第一次搞砸了,你可以再试一次。 除了这个突出的好处之外,子主题对您的 WordPress 网站的维护和开发非常重要。
消除丢失修改的风险
更改您的父主题(原始主题文件)意味着当您更新主题时,更改将丢失。 这让你处于某种死胡同状态; 如果您更新主题,您将丢失所有修改,但如果您不更新主题,您的站点上将存在可能对其产生负面影响的错误。
有争议的是,一旦完成更新,您可以简单地将与修改相关的代码复制粘贴到您的父主题中。 尽管这是完全可能的,但为什么每次更新主题时都要花时间查找所做的修改并将它们复制粘贴到更新的主题文件中? 这是一个简单但容易出错的过程。
这是儿童主题的重要性首先被意识到的地方。 通过使用子主题,您可以保留所有修改并安全地更新您网站的主题。
维护代码组织
一个 WordPress 主题通常由几千行代码和几个不同的文件组成——HTML、CSS、PHP、JavaScript 等。 正因为如此,这里和那里所做的任何细微更改都变得难以追踪。 当需要返回并编辑主题或修复意外错误时,这将被证明是非常昂贵的(时间和预算方面)。

正如我们上面讨论的,子主题积极地从他们的父主题继承。 您对子主题所做的任何更改都保留在那里(在子主题中发生的事情会保留在子主题中!)并且更容易跟踪,因为它只有几百行代码(在最激进的情况下)而不是几千。
正如您现在很可能知道的那样,使用子主题没有任何缺点。 实际上,它们可以保护您的网站免受意外错误的影响。
如何在 WordPress 中创建子主题
大多数主题都带有儿童主题,但如果您找到一个自己喜欢的主题,那么自己创建一个儿童主题并不困难。 我将通过为我们的 Sparkling 主题创建一个子主题来演示本教程。

第 1 步:在 WordPress 安装中为子主题创建一个目录。
- 导航到您的 WordPress 网站的主题目录 (
/wp-content/themes)。 - 创建一个新文件夹并将其命名为sparkling-child 。 最佳做法是为您的子主题提供与父主题相同的名称,并在末尾附加-child 。

我们会将所有子主题的文件添加到此文件夹中。 也就是说,子主题正常运行所需的唯一文件是style.css文件。
第 2 步:为您的新子主题创建一个 style.css 文件。
- 导航到在步骤 1 中创建的子主题目录,即
/wp-content/themes/sparkling-child。 - 在目录中创建一个新的
.css文件并将其命名为style.css。 - 将以下代码复制并粘贴到新的
style.css文件中:
https://gist.github.com/rafaysansari/59ab402cffc540d050ed
在上面给出的代码中,最重要的几行是以Theme Name 、 Template和@import开头的。 如果您要为另一个父主题创建子主题,那么正确填写这些行非常重要。 @import行确保您不必从头开始重写父主题的 CSS 规则。 如果没有@import行,新站点将只加载内容,没有样式。
如果您的父主题有多个样式表,则跳过此步骤。 我们将在以下步骤中向您展示如何使用原生 WordPress 功能导入多个样式表。
第 3 步:创建functions.php文件(可选)。
functions.php文件使 Web 开发人员能够使用本机 WordPress 函数和 PHP 代码向其 WordPress 网站添加功能。
- 导航到您的子主题文件夹,即sparkling-child 。
- 创建一个
.php文件并将其命名为functions.php。 - 将以下代码添加到functions.php文件中:
https://gist.github.com/rafaysansari/6c3cc1606823d56388f4

需要注意的是,子主题不需要functions.php文件即可运行。 事实上,如果您打算修改父主题的功能,您应该只添加此文件。 在大多数情况下,一个样式表就足够了,但是如果您的父主题有多个样式表,那么您必须创建一个functions.php文件。
第 4 步:导入多个样式表(可选)。
例如,如果您选择的父主题带有多个样式表,则使用@import将它们导入您的子主题会使您的网站速度慢几秒钟——这并不好。 如果可以通过几行代码避免增加站点的页面加载时间,则您不希望增加它。
- 导航到您的子主题目录并在文本编辑器中打开
functions.php文件。 - 将以下代码行添加到打开
<?php标记下的functions.php文件中:
https://gist.github.com/rafaysansari/9535343506d670226f4e
上面代码中使用的wp_enqueue_style()函数会将多个样式表导入您的子主题,而不会减慢您的网站速度。
注意:创建子主题的最佳实践建议无论您的父主题有多少样式表,您都应该始终使用上面给出的代码导入它们。
第 5 步:上传子主题。
现在您已经成功创建了子主题,是时候将它上传到您的 WordPress 网站并激活它了。
- 将子主题目录压缩为
.zip文件。 - 登录到您的 WordPress 管理面板并导航到外观>主题。
- 单击以下屏幕上的添加新按钮。

单击上传主题按钮。 - 单击上传主题按钮继续。

在您的驱动器中找到子主题的 .zip 文件并上传。 - 浏览您的子主题的
.zip文件并上传。 - 上传子主题后,单击激活。
您还可以通过 FTP 客户端直接将.zip文件复制粘贴到主题目录中来上传子主题。 如果您要为另一个主题创建子主题,请务必对上面给出的代码进行必要的更改。
本教程仅用于演示如何创建子主题。 我们为 Sparkling 创建了一个子主题,如果您不想花时间创建自己的主题,可以直接下载。
自定义您的孩子主题
假设一切都按计划进行,当您激活子主题时,您的网站看起来应该与激活父主题时完全相同。 但是坚持住! 创建子主题以使您的网站看起来与众不同难道不是重点吗?
在本节中,我们将向您展示如何开始自定义子主题以进行修改。
应用自定义样式
由于我们创建的第一个文件(和强制文件)是 , style.css因此只有通过使用它向子主题添加自定义样式开始才有意义。 通过向样式表添加自定义 CSS 代码,您将能够覆盖父主题的样式表。
使用 CSS,您可以修改激活主题的几乎每个设计和样式方面,从颜色和按钮到尺寸和字体样式。 具有 CSS 真正诀窍的 Web 开发人员会修改子主题的整个布局,使其独一无二。

您所要做的就是将自定义 CSS 代码添加到您的子主题的style.css文件的底部,您就可以开始了。 那些不想在每次需要进行简单更改时访问其站点的 FTP 客户端的人可以导航到 WordPress 的默认编辑器(外观>编辑器)并直接从那里添加 CSS 代码。
替代主题修改技术
将 CSS 代码添加到style.css文件是修改子主题的最简单方法。 但是,如果您想将事情提升到一个新的水平,并且可能为子主题添加一些新的自定义功能,那么这就是事情变得严重的地方。 您可以进行不同类型的修改(除了更改设计元素),例如:
- 向
functions.php文件中添加新函数。 我们已经为您的子主题创建了functions.php文件,所以您现在要做的就是根据您想要实现的功能向其中添加一些自定义函数。 您可以使用 PHP 编写代码或使用本机 WordPress 功能。 - 编辑模板文件。 如果
style.css和functions.php只是没有剪下来,你仍然需要修改主题,你可以从父主题复制粘贴模板文件并进行相应的编辑。 - 添加新的模板文件。 如果您在其他地方(不在父主题的目录中)找到了您喜欢的模板,或者如果您想创建自己的模板,您可以将它们直接添加到子主题并从那里开始。
您可以放心,无论您采用何种方法来修改激活的主题,您的 WordPress 网站都不会出现有害的、意外的错误。 如果代码出现问题,您将确切知道错误发生的位置并能够纠正它。 (提示:它通常在您添加的最后几行中!)
关于子主题的最好的事情之一是它们使用户能够完全自定义父主题以匹配他们网站的品牌,这对新老企业都特别有用。 如果您以后想根据相同的父主题或新的父主题完全重新设计您的网站,您可以随时创建一个新的子主题并从那里开始!
包装它
子主题是修改 WordPress 主题的推荐方式。 它们使用户免于对其原始主题文件犯下潜在的有害错误,并且每次主题更新时都有丢失修改的风险。
我们涵盖了您需要了解的有关 WordPress 中子主题的所有信息,讨论了它们为何如此重要,并引导您完成了有关如何从头开始创建您自己的子主题的深入教程。 为帮助您开始进行修改,我们最后简要介绍了如何开始自定义子主题。
您是否同意所有设计和功能修改都应通过子主题进行? 您是否能够创建子主题并在您的 WordPress 网站上成功激活它? 我们很想听听您的经历,所以请在下面发表评论让我们知道!
