如何使用WordPress函数删除标题中的css文件?

时间:2013-02-12 作者:Emerson Maningo

我想删除头中加载的CSS,这是显示的代码:

<link rel=\'stylesheet\' id=\'my-css\'  href=\'http://test.tld/wp-content/themes/mytheme/my.css?ver=3.5\' type=\'text/css\' media=\'all\' />
我尝试使用这些功能,但没有成功:

wp_dequeue_style(\'my-css\');
wp_deregister_style(\'my-css\');
是否有其他方法可以删除上面的CSS行而无需在模板中手动编辑?

谢谢

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

如果样式表已注册并正确排队,则。。。

function dequeue_my_css() {
  wp_dequeue_style(\'my-css\');
  wp_deregister_style(\'my-css\');
}
add_action(\'wp_enqueue_scripts\',\'dequeue_my_css\');
// add a priority if you need it
// add_action(\'wp_enqueue_scripts\',\'dequeue_my_css\',100);
。。。应该删除它。这仅在样式表注册和/或排队时有效wp_register_stylewp_enqueue_style.

如果它没有正确注册,那么你必须弄清楚你的主题做了什么并撤销它。根据主题的编写方式,可能需要编辑模板。

http://codex.wordpress.org/Function_Reference/wp_dequeue_style

http://codex.wordpress.org/Function_Reference/wp_deregister_style

SO网友:PayteR

取消注册/出列样式是最佳实践

https://codex.wordpress.org/Function_Reference/wp_deregister_stylehttps://codex.wordpress.org/Function_Reference/wp_dequeue_style

但您也可以使用此过滤器来过滤具有任何条件的样式:

add_filter( \'style_loader_src\', function($href){
if(strpos($href, "name-of-allowed.css") !== false) {
return $href;
}
return false;
});

结束

相关推荐

用特定页面上的其他CSS覆盖主题样式

我购买的wordpress主题的默认CSS文件中包含一些jQuery UI样式。问题是我有一个使用jQuery UI的插件,主题的默认CSS使插件损坏。我希望默认的jquery UI CSS文件覆盖包含在主题CSS文件中的UI样式我看到一些人提到使用排队在页面底部加载jQuery CSS,但我不知道如何做到这一点。谢谢