可以直接从模板文件中将原始的css字符串入队吗?

时间:2012-06-25 作者:Chris

我想知道是否可以将原始CSS作为字符串直接从模板文件中排队?

我正在为页面编写自定义模板,需要为其添加一些样式规则。我想做的是在PHP中将样式写成字符串变量,然后使用enqueue\\u style函数加载这些样式,而不是将它们添加到“style”中。css”或其他一些外部样式表。

我假设,只要我在调用“get\\u header”函数之前将样式排队,并且如果我连接到“wp\\u head”或“wp\\u enqueue\\u styles”操作,这将起作用,但它似乎不起作用,而且我不确定“wp\\u enqueue\\u style”是否可以接受原始CSS字符串。

有人有什么建议吗?

谨致问候,

克里斯

4 个回复
最合适的回答,由SO网友:EAMann 整理而成

是和否。

您可以通过编程方式将原始CSS字符串加载到标题中,但不能使用wp_enqueue_style() 让它排队。该函数专门将文件加载到<link> 标签。

但你能做的是:

function print_inline_script() {
?>
<style type="text/css">
/* ... styles go here ... */
</style>
<?php
}
add_action( \'wp_head\', \'print_inline_script\' );

SO网友:kevin conboy

对不起,我刚刚注意到这一点:

我假设,只要我在调用“get\\u header”函数之前将样式排队,并且如果我连接到“wp\\u head”或“wp\\u enqueue\\u styles”操作,这将起作用,但它似乎不起作用,而且我不确定“wp\\u enqueue\\u style”是否可以接受原始CSS字符串。

它应该可以工作,确保您已经为CSS文件输入了句柄和URL。

SO网友:kevin conboy

是,只要它在标头中的wp\\u head()之前注册/排队。

SO网友:henrikrank

将样式直接写入模板/插件<style>.my-class{...}</style>WordPress Handbook, 如果你有一个样式表,你可以使用wp_enqueue_style, 然后您可以考虑使用wp_add_inline_style() 作用请参见examples in the docs` 有关实施说明。

这样您就可以;挂钩“;将CSS字符串添加到另一个样式表上,它将显示为单独的<style> DOM中的元素。

结束

相关推荐

无法通过ADD_ACTION将css放入头部

我正在尝试向CSS的头部添加一些CSS,但我无法使其工作(我想在主题CSS之前将其添加到头部,以便插件用户可以轻松超越插件的默认CSS,而不需要!重要的超越)。以下是我尝试的内容:<?php add_action(\'wp_head\', \'addCSS\'); function addCSS() { wp_register_style( \'prefix-style\', plugins_url(\'AddToCartStyles.css\', __FILE__