本文发布于 1204 天前,其中的信息可能已经有所发展或是发生改变。
前几天,我发布将functions.php做成专属插件,避免主题更新导致设置覆盖,适用于只修改了functions.php的站长们。那如果修改了除了functions.php以外的主题文件怎么办,WordPress提供了子主题功能,今天我就说说如何设置子主题。
子主题目录创建
子主题实际上也是一个主题,其要放在wp-content/themes目录下。创建任意名的新目录。例如:本站的子主题目录名argon-suiyi。
子主题必须要拥有style.css,这是WordPress的识别文件,拥有正确格式的文件才能被WordPress识别。
style.css内容
/* Theme Name: argon-s Author: solstice23&Suiyi_Light Author URI: https://solstice23.top/ Description: 轻盈、简洁、美观的 WordPress 主题 Template: argon Version: 1.2.1.1.S License: GNU General Public License v3.0 License URI: https://www.gnu.org/licenses/gpl-3.0.html Tags: 简约, 两栏, 侧栏在左边, 浮动侧栏, 文章目录, 自适应, 夜间模式, 可自定义 */
以上是我的博客的子主题的头部信息,基本完全基于父主题。
注意开启子主题的必须参数是Theme Name和Template,即子主题名称及父主题名称。
由于style.css对父主题的style.css是替换,所以需要重新引入父主题的style.css。此处使用@import。
例如本站使用的argon父主题
@import url("../argon/style.css");
这样style.css基本设置完成了
关于functions.php
functions.php与其他文件不同,不是简单的覆盖关系,是优先加载子主题functions.php再加载父主题functions.php,所以把代码加入子主题functions.php中在更新父主题后仍能正常使用
添加其他文件
通过子主题功能,你可以添加新的模板,添加新的资源文件,修改原有文件等功能。这些通常会在父主题升级后仍能使用。
更多功能需要自行挖掘