没有从functions.php调用Wordpress入队函数;样式表未添加

时间:2018-03-25 04:26:34

标签: php wordpress hook

我正在构建我的第一个wordpress主题,并试图将外部style.css文件排入队列。

该文件位于主题的主目录中。

我创建了一个functions.php文件并将以下代码添加到:

<?php

function addExternalStuff(){
    wp_enqueue_style('style', get_stylesheet_uri());

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

这正是教程和文档中要添加的内容。

我还在add_action()中使用了wp_enqueue_style。

<?php

function addExternalStuff(){
    wp_enqueue_style('style', get_stylesheet_uri());

}  
add_action('wp_enqueue_style','addExternalStuff'); 

什么都没发生。样式表未添加到代码中。我在函数的顶部添加了一个回声,但它没有打印出来。我还在addExternalStuff()函数之外的functions.php顶部添加了一个echo,它会打印出来,这意味着这是更正的functions.php文件。

1 个答案:

答案 0 :(得分:2)

经过一番挖掘后,我了解到我没有在header.php文件的标题中包含wp_head()。这就是Wordpress将样式表添加到标题中的方式,并且在没有它的情况下排队也是如此(在footer.php中也是wp_footer)。

在header.php中:

<head>

     <?php wp_head() ?>

</head>

在functions.php中也使用了get_template_directory_uri()而不是get_stylesheet_uri(),因此我可以使用除默认style.css之外的唯一名称来调用样式表。

  <?php

    function addExternalStuff(){
        wp_enqueue_style('style',get_template_directory_uri().'css/new_stylesheet.css');

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