为什么你必须在wordpress中排列样式表?

时间:2016-01-15 00:59:19

标签: php css wordpress

为什么必须在WordPress子主题中将父主题样式表排入队列?我在子主题中创建了style.css,当我对其添加更改时,它没有排列父样式表的functions.php文件,例如更改元素的背景颜色。我已经搜索并回答但却找不到任何可以告诉我原因的内容。一切只是说你必须。

1 个答案:

答案 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> 从子主题中,您可以通过以下两种方法之一加载父样式。

  1. enqueue_style(),参数指向父主题。一些php类似于:wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );。这就是你要说的方法。
  2. 来自子主题@import文件中的
  3. style.css。一个典型的代码行为:@import url( '../parent-theme-folder/style.css' );。这不理想,因为@import会减慢页面加载时间。
  4. 更好的方法 - 不要使用root style.css 根本不必在根文件夹中使用style.css。 WordPress严格需要此文件的唯一方法是阅读顶部注释中的主题信息。这个要求意味着style.css不能被最小化,或者至少是最小化的痛苦。最小化是删除代码文件中的所有空格以减小文件大小的过程。这会降低页面加载速度。

    所以现在很多现代主题都是从主题子文件夹中的不同最小化css文件中排列其主要样式。主style.css只包含由核心php代码读取但未在前端加载的信息评论部分。