我究竟要做些什么来创建具有更多css文件的主题的子主题?

时间:2015-07-23 14:50:10

标签: php wordpress content-management-system wordpress-theming

我必须创建一个子主题来实现对WordPress主题的一些更改,并避免在更新主题时丢失这些更改。我对这是怎么回事有疑问。

我正在关注此官方教程:https://codex.wordpress.org/Child_Themes

我已经在我的WordPress安装的WordPress accesspress-parallax-child目录中创建了子主题目录(名为accesspress-parallax,因为原始主题的目录是wp-content/themes/)。我已将style.cssfunctions.php个文件放在此新文件夹中。

我已将此注释代码放在style.css文件中(如文档中所述):

/*
 Theme Name:   Accesspress Parallax Child
 Theme URI:    http://example.com/twenty-fifteen-child/
 Description:  Accesspress Parallax Child Theme
 Author:       Andrea Nobili
 Author URI:   http://example.com
 Template:     accesspress-parallax
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  accesspress-parallax-child
*/

现在它说我必须通过将此代码放入functions.php文件来排队父主题和子主题样式表:

add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );

}

现在我有两个疑问:

  1. 在上一段代码中,我是否必须以某种方式引用我的父主题?它如何知道父主题是什么?

  2. 在文档中说:

  3.   

    以下示例函数仅在您的父主题时才有效   只使用一个main style.css来保存所有的css。如果你的主题有   不止一个.css文件(例如ie.css,style.css,main.css)然后你   必须确保维护所有的父主题   的依赖关系。

    这究竟是什么意思?在我原来的主题中,我有一个以上的.css文件。事实上,在原始主题中,我有一个包含许多css文件的css目录。

    我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

  1. 它“知道”它指的是父主题,因为get_template_directory_uri()将URI返回到您的父主题。如果您希望URI为您的子主题,请使用get_stylesheet_directory_uri()
  2. 由于您的父主题包含多个CSS文件,因此可能需要单独将每个文件排入队列(如果它们未自动排队)。这取决于主题。如果您的样式被破坏,请确保使用wp_enqueue_style()get_template_directory_uri()重新排列所需内容。