在加入Wordpress子主题样式表the correct way时,新样式将覆盖父样式。
但是,由于Divi引入了Builder对自定义帖子类型的支持,所以添加了新的样式表style-cpt.css。
此样式表中的所有样式(不幸的是,其中很多样式后面都有!important
)是在排队的子样式之后声明的,因此将覆盖所有匹配的样式。
是否有任何方法可以覆盖此类“自定义”样式表?
答案 0 :(得分:1)
我正在使用它并且工作正常:
function disable_cptdivi(){
remove_action( 'wp_enqueue_scripts', 'et_divi_replace_stylesheet', 99999998 ); } add_action('init', 'disable_cptdivi');
答案 1 :(得分:0)
经过一些试验,我发现functions.php中的以下代码可以使用...(请注意,这将使标准主题样式表以及Divi的自定义后置子主题都入队)。 您可以在子主题文件夹的自己的style-cpt.css文件中包含所有要覆盖的样式。
function my_theme_enqueue_styles() {
$parent_style = 'divi-style';
$template_directory = get_template_directory_uri();
$stylesheet_directory = get_stylesheet_directory_uri();
wp_enqueue_style( $parent_style, $template_directory . '/style.css' );
wp_enqueue_style( 'child-style',
$stylesheet_directory . '/style.css',
array( $parent_style ),
wp_get_theme()->get('Version')
);
$parent_style = 'divi-cpt-style';
wp_enqueue_style( $parent_style, $template_directory . '/style-cpt.css' );
wp_enqueue_style( 'child-cpt-style',
$stylesheet_directory . '/style-cpt.css',
array( $parent_style ),
wp_get_theme()->get('Version')
);
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );