我在子主题中对site-banner.css进行了更改。我想将文件排入队列以覆盖父主题。
我尝试将其包含在functions.php文件中,但我无法看到刷新后的更改:
function enqueue_child_theme_style() {
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri().'site-banner.css' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_style', 10 );
值得一提的是,style.css的functions.php文件中已经有一个enqueue。我是否需要为该功能添加更多细节?还尝试更改文件位置并在uri()中重新放置它。
答案 0 :(得分:1)
你能试试吗?
function enqueue_child_theme_style() {
wp_dequeue_style( 'child-style' );
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri().'site-banner.css' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_style', 10 );
答案 1 :(得分:1)
首先,你在这一行中错过了斜杠(/
):
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri().'site-banner.css' );
如果您的文件直接进入您的子主题目录,那么您的代码将是:
function enqueue_child_theme_style() {
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri().'/site-banner.css' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_style', 99);
另外,请确保您的处理程序child-style
不重复。如果是这样,你想要覆盖它(不建议保持不变。最好有一些其他的处理程序名称)。这一行wp_dequeue_style( 'some-style' );
用于阻止带有处理程序some-style
的样式表加载到您的页面中。然后你的代码将是:
function enqueue_child_theme_style() {
wp_dequeue_style( 'some-style' ); //you can delete this line, if you want to keep the stylesheet in pages. Second line will load below of this stylesheet and will override css rules
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri().'/site-banner.css' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_style', 99);
在这一行add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_style', 99);
99
中,我们添加了更高的priority
,然后在wordpress中默认为(10)。这将在以后加载样式表,然后加载其他优先级较低的样式表。
修改强>
使用此功能从父主题中删除site-banner.css
,并调用您自己的site-banner1.css
样式表:
function enqueue_child_theme_style() {
wp_dequeue_style( 'site-banner' );
wp_enqueue_style( 'child-banner', get_stylesheet_directory_uri().'/site-banner.css' );
}
add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_style', 99);
答案 2 :(得分:0)
我设法通过使用wp_deregister_style解决问题:
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' );
}
感谢您的所有输入。