使用子主题,可以继承父主题的所有功能,同时避免因为直接使用父主题在父主题升级时造成文件丢失的情况。
子主题的创建很简单:
1、首先在主题文件夹下(wp-content hemes)建立一个文件夹,用来存放子主题的所有文件,例如:twentytwelve-child。
2、在twentytwelve-child文件夹下新建一个style.css文件,该文件是必须的。将以下代码粘贴进去:
1 2 3 4 5 6 7 8 9 |
/*
Theme Name: Twenty Twelve Child (子主题名称,必须)
Theme URI: http://www.**.com (主题url)
Description: Child theme for the Twenty Twelve theme (主题描述)
Author: ** (主题作者)
Author URI: http://www.**.com (作者uri)
Template: twentytwelve (父主题目录名称,必须)
Version: 1.0.0 (版本号)
*/
|
括号的字要去掉,此时就可以在后台-外观-主题中激活该子主题。
3、自定义css
子主题不会继承父主题的css样式,也就是说外观布局要重新定义,你可以在style.css文件中自定义,也可以使用@import直接调用父主题的样式,然后再进行修改,示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
/* Theme Name: Twenty Twelve Child Theme URI: http://www.**.com Description: Child theme for the Twenty theme Author: ** Author URI: http://www.**.com Template: twenty Version: 1.00 */ @import url("../twenty/style.css"); a{ color:green; } |
4、编辑functions.php文件
functions.php文件是用来保存主题的一系列功能函数,建立子主题后,父主题的功能函数会自动调用。如果你需要额外增加函数,则在twenty-child下新建一个functions.php文件,例:在底部添加版权文本
1 2 3 4 5 6 |
<?php add_action( 'twenty_credits', 'my_credits' ); function my_credits(){ echo '<span>©2013 **wp All rights reserved.</span> '; } ?> |
注意:functions.php文件中的代码不会替换父主题的,它是额外增加进去。
5、编辑其它文件
在子主题中,除functions.php文件外,其它文件都是完全替换父主题的同名文件。例如你要重新修改footer.php文件,则在twenty-child中新建该文件,将父主题该文件的代码粘贴进去再进行修改。
要点:
1、只需建立一个style.css文件就可以创建一个子主题;
2、使用hook API在functions.php中添加额外的主题功能;
3、要修改哪个文件就在子主题文件夹下建立它的同名文件。
4、父主题的升级不会影响到子主题的文件。