我正试图了解WordPress中的wp\\u add\\u inline\\u style()函数。
//setting inline css.
function my_styles_method() {
wp_enqueue_style(
\'custom-style\',
get_template_directory_uri() . \'/css/custom_script.css\'
);
$color = get_theme_mod( \'my-custom-color\' ); //E.g. #FF0000
$custom_css = "
.mycolor{
background: {$color};
}";
wp_add_inline_style( \'custom-style\', $custom_css );
}
add_action( \'wp_enqueue_scripts\', \'my_styles_method\' );
我理解其中的大部分,但我不理解这一点:
wp_enqueue_style(
\'custom-style\',
get_template_directory_uri() . \'/css/custom_script.css\'
);
这是一种依赖关系吗?还是一个空白的css文件,这样代码就可以写入其中?
如果是其家属,那么为什么?我只想将自定义css加载到主题中,这样它就可以更具自定义性。
谢谢
最合适的回答,由SO网友:Stephen Harris 整理而成
wp_add_inline_style()
旨在向现有样式表添加其他CSS。其想法是,您可能需要动态更改样式表-例如,您有用户选择的与类别相关的颜色,并且希望相应地为每个类别的标题上色。您不能硬编码,因为所讨论的颜色未知,但存在于数据库中。
所以
wp_enqueue_style(
\'custom-style\',
get_template_directory_uri() . \'/css/custom_script.css\'
);
正在对现有样式表进行排队,我们将把动态生成的CSS附加到该样式表。
看起来您要做的是加载用户输入的CSS。我真的不建议这样做-通过定制器提供调整是允许用户个性化主题的好方法,但如果他们需要进行实质性更改,他们真正想要的是child theme.
然而,如果你要这样做,我会使用wp_enqueue_style()
加载主题的style.css
然后附加自定义项。(大多数主题似乎都是硬编码的style.css
进入<head>
, 但我不知道高速公路)。
<小时>Developers: 您应该知道此trac票据:http://core.trac.wordpress.org/ticket/24813