如何在我的WordPress主题中使用wp_enqueue_style()?

时间:2010-08-12 21:11:23

标签: php wordpress wordpress-plugin

我正在为客户构建我的第一个WordPress网站。我真的想使用LESS来获取CSS并找到一个名为WP-LESS的WP插件。

现在,我总是使用WordPress newb,但看起来这个插件需要我使用一个名为wp_enqueue_style()的函数来告诉WordPress处理.less文件。

我无法弄清楚我在哪里使用这个功能。我查看了我的主题目录中的header.php文件,我看到了。

<link rel="stylesheet" type="text/css" media="all"
  href="<?php bloginfo( 'stylesheet_url' ); ?>" />

我是否应该用这样的代码替换这段代码?

<?php wp_enqueue_style('mytheme',
  get_bloginfo('template_directory').'/style.less',
  array('blueprint'), '', 'screen, projection'); ?>

5 个答案:

答案 0 :(得分:25)

不完全,但差不多。你想要做的是在functions.php中放置一个将脚本排队的函数。

所以:

function addMyScript() {
    wp_enqueue_style('mytheme', get_bloginfo('template_directory').'/style.less', array('blueprint'), '', 'screen, projection');
}
add_action('wp_head', 'addMyScript');

然后确保do_action('wp_head');文件中有header.php,它应该可以正常工作。

答案 1 :(得分:23)

主题或插件中的wp_enqueue_style用法:

wp_enqueue_style( 'my-style', get_template_directory_uri() . '/css/my-style.css', false, '1.0', 'all' ); // Inside a parent theme
wp_enqueue_style( 'my-style', get_stylesheet_directory_uri() . '/css/my-style.css', false, '1.0', 'all' ); // Inside a child theme
wp_enqueue_style( 'my-style', plugins_url( '/css/my-style.css', __FILE__ ), false, '1.0', 'all' ); // Inside a plugin

答案 2 :(得分:4)

自己进入这个问题,EAMann的提示几乎奏效了。它可能是WordPress(3.4)的版本,虽然我不是php开发人员,所以我不确定,但我需要在函数下面而不是提供的内容:

add_action('wp', 'useLess');

答案 3 :(得分:3)

在你的主题function.php中添加以下功能,你就会得到样式和脚本。

<?php
if ( ! function_exists( 'add_script_style' ) ) {
    function add_script_style() {
        /* Register & Enqueue Styles. */

        wp_register_style( 'my-style', get_template_directory_uri().'/css/my-style.css' );
        wp_enqueue_style( 'my-style' );

        /* Register & Enqueue scripts. */

        wp_register_script( 'my-script', get_template_directory_uri().'/js/my-script.js' );
        wp_enqueue_script( 'my-script');
    }
}
add_action( 'wp_enqueue_scripts', 'add_script_style', 10 );
?>

答案 4 :(得分:0)

如果正确输入此代码,则必须在index.php文件wp_head();中看到此函数是否存在。 &wp_footer(); 如果不存在,则需要在索引文件中添加此功能。您需要添加此wp_head();在haed标签之前,另外一个在body标签之前添加。

function load_style(){

   wp_register_style('my_style',get_template_directory_uri()。'/css/my_style.css');
   wp_enqueue_style('my_style');
}
//注册样式表。
add_action('wp_enqueue_scripts','load_style');

更多details