Wordpress 子主题样式.css不起作用

2022-08-30 18:48:52

我创建了一个与父主题格式相同的文件结构。我的父主题称为Alpine,在Alpine中有一个函数.php和style.css文件。似乎没有任何附加样式.css文件。

我创建了一个名为Alpine-child的目录,并在其中创建了一个函数.php和样式.css文件。

我无法弄清楚为什么我对子样式所做的任何更改.css没有实现,但是当我在父样式中进行相同的更改时,它们就会实现.css

这是我的孩子风格.css:

/*
 Theme Name:   Alpine Child
 Theme URI:    http://www.creative-ispiration.com/wp/alpine/
 Description:  My first child theme, based on Alpine
 Author:       MilkshakeThemes
 Author URI:   http://themeforest.net/user/milkshakethemes
 Template:     Alpine
 Version:      1.0.0
 Tags: one-column, two-columns, right-sidebar, fluid-layout, custom-menu, editor-style, featured-images, post-formats, rtl$
 Text Domain: alpine-child
*/

这是我的子函数.php文件:

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
?>

答案 1

查看您的代码。更重要的是查看样式表的顺序。<head>

首先添加子主题中的样式,然后添加父主题中的所有样式。这将导致父主题中的样式覆盖子主题样式。

通过使用add_action的第三个参数,可以将函数的优先级更改为在父级之后运行。这将使您的子主题样式排在最后,并允许CSS按预期工作。my_theme_enqueue_styles

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles', 11 );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'child-style', get_stylesheet_uri() );
}
?>

答案 2

这对我有用:

<?php
function my_theme_enqueue_styles() {
    $parent_style = 'twentyseventeen-style'; 
    $child_style = 'twentyseventeen-child-style';
    wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
    wp_enqueue_style( $child_style, get_stylesheet_uri() );
}
?>

其他答案都没有。


推荐