wp_enqueue_style不起作用

时间:2015-03-14 20:12:40

标签: wordpress

我有一个页面,我想应用自定义css文件,但我在为我的页面'主页'加载自定义css文件时遇到困难。如果有人能帮助我,我们将非常感激。谢谢!

这部分有效:

add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css');

}

这一部分没有:(

function addcssAndScripts() 
{
if ( is_page( 'homepage' ) )
{
    wp_enqueue_style( '/stylehome.css', get_stylesheet_uri() );
}
}

add_action( 'wp_enqueue_scripts', 'addcssAndScripts');

2 个答案:

答案 0 :(得分:2)

你误解了应该如何使用wp_enqueue_style

在下面的示例中,我传入的第一个参数是句柄'style-home'。第二个参数是文件的路径。

function wpse_load_scripts_styles() {

    if ( is_page( 'homepage' ) ) { 
        wp_enqueue_style( 'style-home', get_stylesheet_directory_uri() . '/stylehome.css' );
    }

}
add_action( 'wp_enqueue_scripts', 'wpse_load_scripts_styles' );

get_stylesheet_directory_uri()获取您的子主题文件夹的URL。在您的问题的第一个代码块中使用的get_template_directory_uri()获取父主题目录的路径。根据文件所在位置选择正确的函数。

我的猜测是您已将页面homepage设置为首页,因此您可能希望将条件替换为is_front_page()

替换:

if ( is_page( 'homepage' ) ) {

使用:

if ( is_front_page() ) {

最后,问题中第二个代码块中使用的get_stylesheet_uri()将返回子主题样式表的URL(如果没有子主题设置,则返回父主题)。

进一步阅读:http://codex.wordpress.org/Function_Reference/wp_enqueue_style

答案 1 :(得分:1)

这对你有用吗?

function addcssAndScripts() 
{
if ( is_page( 'homepage' ) )
{
    wp_enqueue_style( 'child-home-style', get_stylesheet_directory_uri . '/stylehome.css');
}
}

add_action( 'wp_enqueue_scripts', 'addcssAndScripts');

http://codex.wordpress.org/Function_Reference/get_stylesheet_directory_uri

http://codex.wordpress.org/Function_Reference/wp_enqueue_style