为什么必须在WordPress子主题中将父主题样式表排入队列?我在子主题中创建了style.css
,当我对其添加更改时,它没有排列父样式表的functions.php
文件,例如更改元素的背景颜色。我已经搜索并回答但却找不到任何可以告诉我原因的内容。一切只是说你必须。
答案 0 :(得分:3)
在WordPress主题中加载样式时,有许多方法可以为猫设置皮肤。
父排队儿童style.css -
在某些主题中,父style.css
在父主题wp_enqueue_style()
代码中排队php
。
2015默认主题是此方法的一个示例。在functions.php
第233行,有一行wp_enqueue_style( 'twentyfifteen-style', get_stylesheet_uri() );
。当主题独立时get_stylesheet_uri()
返回主题自己的style.css
。当存在子主题时get_stylesheet_uri()
将返回子主题 style.css
。
以上是您父母主题的可能情况。
子项将父样式排入队列。< - strong> 从子主题中,您可以通过以下两种方法之一加载父样式。
enqueue_style()
,参数指向父主题。一些php类似于:wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
。这就是你要说的方法。@import
文件中的style.css
。一个典型的代码行为:@import url( '../parent-theme-folder/style.css' );
。这不理想,因为@import
会减慢页面加载时间。 更好的方法 - 不要使用root style.css
根本不必在根文件夹中使用style.css
。 WordPress严格需要此文件的唯一方法是阅读顶部注释中的主题信息。这个要求意味着style.css
不能被最小化,或者至少是最小化的痛苦。最小化是删除代码文件中的所有空格以减小文件大小的过程。这会降低页面加载速度。
所以现在很多现代主题都是从主题子文件夹中的不同最小化css
文件中排列其主要样式。主style.css
只包含由核心php代码读取但未在前端加载的信息评论部分。