PHP in CSS file?

时间:2014-04-03 作者:JoshuaBrand

所以我的CSS中有这个。。。

  #mainnav li:after {
content: url(\'images/nav-divider.png\');
}
显然,我需要把它链接到“bloginfo(\'template\\u directory\')/图像/导航分隔符。png’相反,但我如何正确链接它,因为其中有PHP?

谢谢

乔希

2 个回复
SO网友:gmazzap

您可以使用wp_add_inline_style().

假设您将css按如下方式排队

add_action( \'wp_enqueue_scripts\', \'add_my_style\' );

function add_my_style() {
   wp_enqueue_script( \'my_style\', get_template_directory_uri() . \'/mystyle.css\' );
}
然后您可以这样更改函数:

function add_my_style() {

   wp_enqueue_script( \'my_style\', get_template_directory_uri() . \'/mystyle.css\' );

   $style = "#mainnav li:after { content: url(\'{theme_url}/images/nav-divider.png\'); }";
   $style .= "#another-example { content: url(\'{theme_url}/images/example.png\'); }";

   $data = str_replace( \'{theme_url}\', get_template_directory_uri(), $style );

   wp_add_inline_style( \'my_style\', $data )
}

SO网友:Eric Holmes

您可以只使用相对路径。例如,如果样式表位于/wp-content/themes/mytheme/css/mystyles.css 你的形象在/wp-content/themes/mytheme/images/nav-divider.png, 那么你的道路就是../images/nav-divider.png.

结束

相关推荐

延迟所有的js,函数.php文件中的某些js除外

我读过How to add defer="defer" tag in plugin javascripts? toscho发布的代码可以很好地延迟某些js文件,或者通过注释contact-form-7行延迟所有js文件,但我需要延迟除1或2个文件以外的所有js。我确实需要排除jquery。因为它会导致旋转滑块插件在延迟时停止工作。那么,我如何在下面的代码中编写一个条件来排除某些js文件呢?例如,如果我想排除jquery。min和jquery。用户界面。果心最小值function add