如何自定义修改主题而不被新版本覆盖? [复制链接]

moqu8 2017-5-19

5 0

对主题的某些地方不满意,有能力的童鞋一般会自己进行修改,但是每次版本升级的时候就会比较麻烦,需要重新进行修改上传,这样维护成本确实有点高,那么有没有更简单的方法呢?答案肯定是有的,那就是使用子主题。

wordpress的子主题也是一个主题,她继承了父主题的所有功能,并且允许你在子主题中修改扩展自己的功能,而不需要修改任何父主题代码。换句话说,使用子主题修改了主题的功能或者样式以后,妈妈再也不用担心更新升级了,你的任何修改都在子主题里面完好保存。

子主题使用方法

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

  1. /*

  2. Theme Name: TheSimple child

  3. Template: TheSimple

  4. */

主题样式里面的主题信息还有很多,这里建子主题的话,主要是这里那个属性是重点,第一个是主题名字,你也可以自己取名字,但是第二个参数Template是固定的,他是父主题的名称。

这样就完成了一个子主题的创建,返回wordpress外观里面就可以找到了,但是这样的子主题并没有修改任何东西。下面我们来介绍下如何修改主题。

修改样式

网上的教程一般是需要在子主题的style.css里面引入父主题的样式,否则页面会乱,如下:

/*

        Theme name: TheSimple Child

        Template: TheSimple

*/


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

但是考虑到开发的规范性我们把css文件统一放到css目录进行引用,所以只在子主题里面加上父级主题的样式引用是不够的,还需要在子主题的functions.php里面修改为引用根目录的style.css。

修改功能

功能性的代码一般是放在functions.php文件里面,所以先新建functions.php文件,然后在里面添加你的代码。

修改页面布局

复制父主题里面的对应模板文件到子主题,比如index.php文件,然后直接修改即可。如果对样式也有修改,可以在根目录下的style.css里面添加样式。

注意事项

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

为了方便大家修改,TheSimple主题2.0版及后续主题都将在下载文件里面预先配置好子主题,您需要做的就是根据自己的需求进行接下来的修改即可。也就是说,上面的使用方法中,你要做的只有修改功能和修改页面布局。


最新回复 (0)
返回
支持中心
邮箱:winkill2012@qqcom
新站优化中!部分功能尚未完善,敬请谅解!
支持中心