我希望在父主题之后加载修改后的子主题site-banner1.css样式表,以便用更改覆盖父文件。我正在使用enqueue array()尝试通过将最后一个样式id(插件中的CSS)输入到数组函数中来将site-banner1.css推送到队列的末尾。这是来自functions.php的代码:
<?php
if ( !defined( 'ABSPATH' ) ) exit;
if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
function chld_thm_cfg_parent_css() {
wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit(
get_template_directory_uri() ) . 'style.css', array( ) );
}
endif;
add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );
function my_theme_enqueue_styles() {
$parent_style = 'tesseract-site-banner';
wp_enqueue_style( $parent_style,
get_template_directory_uri() . '/css/site-banner.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/site-banner1.css',
array( $parent_style, 'tt-easy-google-font-styles')
); }
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles',99999 );
目前,site-banner1.css在源代码中可见,但它不是要加载的最后一个样式表,因此更改不可见。在具有样式的开发工具中仍然可以看到父site-banner.css。通过将最后一个CSS id添加到数组中,我可以强制site-banner1.css在它之后加载,我认为数组中缺少代码但不确定是什么?如果这不正确,强制表格在队列末尾加载的方法是什么?
答案 0 :(得分:0)
我设法使用wp_deregister_style解决问题:
<?php
if ( !defined( 'ABSPATH' ) ) exit;
if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
function chld_thm_cfg_parent_css() {
wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit(
get_template_directory_uri() ) . 'style.css', array( ) );
}
endif;
add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );
add_action( 'wp_enqueue_scripts', 'load_alta_styles', 200 );
function load_alta_styles() {
wp_dequeue_style( 'tesseract-site-banner' );
wp_deregister_style( 'tesseract-site-banner' );
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() .
'/site-banner1.css' );
}