我正在为我的网站和我的功能创建一个子主题。php我添加了一个代码,仅在主页上加载特定的css文件:
// enqueue styles for child theme
function wowdental_enqueue_styles() {
// enqueue parent styles
wp_enqueue_style(\'Divi\', get_template_directory_uri() .\'/style.css\', get_the_time() );
// Flip3d css
wp_enqueue_style( \'flip\', get_stylesheet_directory_uri() . \'/css/flip.css\', get_the_time() );
// flip3d only on home page
if( is_home() ) {
wp_enqueue_style(\'flip\');
}
}
add_action(\'wp_enqueue_scripts\', \'wowdental_enqueue_styles\');
我为if is\\u home()设置了条件,但无论是否为主页,样式表都会被拉入所有页面。
我还使用了if(is\\u home()| | is\\u front\\u page()),但得到了相同的结果。
我做错了什么??
最合适的回答,由SO网友:James 整理而成
您需要将if语句放在第一个排队的行周围。
// enqueue styles for child theme
function wowdental_enqueue_styles() {
// enqueue parent styles
wp_enqueue_style(\'Divi\', get_template_directory_uri() .\'/style.css\',
get_the_time() );
// Flip3d css
// flip3d only on home page
if( is_home() ) {
wp_enqueue_style( \'flip\', get_stylesheet_directory_uri() .
\'/css/flip.css\', get_the_time() );
}
}
add_action(\'wp_enqueue_scripts\', \'wowdental_enqueue_styles\');
要像在原始代码中一样执行,首先需要使用wp\\u register\\u样式,然后将队列保留在if中。