另一种加载父主题样式的方法
有些时候为个性化主题,我们会制作子主题方便修改主题功能外观,而不用修改原主题,通常我们会用:
- @import url( ‘../parent-theme-folder/style.css’ );
这种方式加载父主题的样式。
详见:
- Codex: How to create a child theme
- Handbook: Inheriting styles in child themes
- _s Theme: Load parent styles when child theme is activated
但使用@ import方式加载样式也有一定的缺点,比如:加载慢等。
我们可以使用另一种加载父主题样式的方法:
- add_action( ‘wp_enqueue_scripts’, ‘my_parent_theme_css’ );
- function my_parent_theme_css() {
- wp_enqueue_style( ‘parent-style’, get_template_directory_uri() . ‘/style.css’ );
- wp_enqueue_style( ‘child-style’, get_stylesheet_uri(), array( ‘parent-style’ ) );
- }
将代码添加到子主题functions.php 模板文件中。
还可以进一步:
- add_action( ‘wp_enqueue_scripts’, ‘my_enqueue_styles’ );
- function my_enqueue_styles() {
- /* If using a child theme, auto-load the parent theme style. */
- if ( is_child_theme() ) {
- wp_enqueue_style( ‘parent-style’, trailingslashit( get_template_directory_uri() ) . ‘style.css’ );
- }
- /* Always load active theme’s style.css. */
- wp_enqueue_style( ‘style’, get_stylesheet_uri() );
- }
在某些特殊的情况下,你可能不希望加载父主题的样式,可以这样写:
- add_action( ‘wp_enqueue_scripts’, ‘my_dequeue_styles’, 11 );
- function my_dequeue_styles() {
- wp_dequeue_style( ‘parent-style’ );
- }
原文:http://justintadlock.com/archives/2014/11/03/loading-parent-styles-for-child-themes
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
写给所有做网站的朋友的一封信
现在就开始执行“1+N”互联网推广和没有开始执行的人,一两天看不出任何区别; 一两个月看来差异也是微乎其微的;但在2-5年的长远时间来看的时候,你的高质量询盘不断增加,你的互联网资产已经建立完成,对手已经很难匹敌,现在你看到这段文字的时候就是最好的开始,现在就是最好的时候,马上开始“1+N”体系的整体互联网推广吧,我们和你一起,开创互联网大未来!