在WordPress中,这是将样式表先从父主题再从子主题排队的正确方式吗?

时间:2017-04-21 作者:Desperado

我正在WordPress中创建一个主题的子主题。在父主题中,我有自己的风格。css和css文件夹内的父主题我有一个基础。css文件(以及其他一些css文件,但问题仅限于base.css文件)。不知怎的,结果是加载样式的顺序是parent->base.css 然后parent->style.css 这个child->style.css. 我想问一下下面的代码是否正确?具体来说Enough Theme.

functions.php inside child theme

<?php
    function my_theme_enqueue_styles() {

        $parent_style = \'parent-style\';
        wp_enqueue_style( $parent_style, get_template_directory_uri() . \'/style.css\', array(\'enough_base\') );

    }
    add_action( \'wp_enqueue_scripts\', \'my_theme_enqueue_styles\', 9 );
?>
<?php
    function enqueue_child_theme_styles() {
      wp_enqueue_style( \'child-style\', get_stylesheet_uri(), array($parent_style) );
    }
    add_action( \'wp_enqueue_scripts\', \'enqueue_child_theme_styles\', 11);
?>
<?php

1 个回复
SO网友:Mervan Agency

您可以尝试以下代码。我认为没有必要使用wp_enqueue_scripts 两次将父主题样式表和子主题样式表分别排队。还有echo get_stylesheet_uri( );enqueue_child_theme_styles 函数没有任何意义。

function my_theme_enqueue_styles() {

    $parent_style = \'styles\';

    wp_enqueue_style( $parent_style, get_template_directory_uri() . \'/style.css\', array(\'enough_base\') );
    wp_enqueue_style( \'child-style\',
        get_stylesheet_directory_uri() . \'/style.css\',
        array( $parent_style ),
        wp_get_theme()->get(\'Version\')
    );
}
add_action( \'wp_enqueue_scripts\', \'my_theme_enqueue_styles\' );
确保更换parent-style 使用相同的$handle 在父主题中注册样式表时使用。有关更多详细信息,请参阅以下链接。https://codex.wordpress.org/Child_Themes

相关推荐

Row actions not showing? Why?

我建造了一个WP_List_Table 显示在我构建的自定义主题页面上。尽管我查看了Internet上关于WP\\U List\\U表格的所有可能信息,但在显示行操作时遇到了一些问题。任何帮助都会很好!class Testimonials_List_Table extends WP_List_Table { function __construct() { parent::__construct( array( \'singular\'=> \'te