Warning: Illegal string offset 'download' in /www/wwwroot/www.wpcun.com/wp-content/themes/1599733641-24165fc8bdf0368/template-parts/single/single-pc.php on line 4

为什么需要创建子主题?如何自定义修改主题而不会被新版本覆盖?

103次
2020-05-17

很多站长朋友在讨论为什么需要创建子主题?如何自定义修改主题而不会被新版本覆盖?很多朋友对自己的主题不满意的时候就会进行修改,但是每次版本升级后就需要重新修改上传,这样维护成本就会很高,所以就需要创建子主题。WordPress子主题也是一个主题,它继承了父主题的所有功能,并且允许你在子主题中修改扩展自己的功能,而不需要修改任何父主题代码,所以需要修改的时候在子主题里面完好保存。

新建子主题

在wordpress主题目录(wp-content/themes)下新建一个子主题,以TheSimple为例,新建一个TheSimple-child,然后在新建的主题目录下新建一个样式文件:style.css,内容大致如下:

/*
    Theme name: TheSimple Child
    Template: thesimple
*/

/* 引入父主题样式 */
@import url("../thesimple/css/style.css");

第一行Theme name是主题名字,你也可以自己取名字;第二行Template是用来指定当前子主题是基于哪个父主题的,需要填写父主题的目录名;最下面一行是引用父主题css文件,具体需要根据使用的主题来修改路径。

这样就完成了一个子主题的创建,进入wordpress后台外观-主题里面就可以找到这个子主题了。

但是这样的子主题只是完成了创建,并没有修改任何东西,下面我们来介绍下如何修改主题。

修改样式

css样式可以直接加到上一步新建的style.css文件里面,加到@import引用父主题样式那一行的后面即可。

修改功能

功能性的代码一般是放在functions.php文件里面,如有需要的话需要在子主题里面新建一个functions.php文件,然后在里面添加你的代码。

修改页面模板

复制父主题里面的对应模板文件到子主题,比如index.php文件,然后直接修改即可。对页面模板的修改如涉及到css的修改的话,可以直接添加进子主题的style.css文件里面。

注意事项

模板类的文件会覆盖父主题的文件,而functions.php并不会覆盖,所以子主题的functions.php里面不需要包含父主题的内容。

END
相关标签

发表评论