可湿性粉剂过滤器来改变管理员的css样式?

时间:2013-12-28 作者:FredHead

我想在新的WordPress 3.8管理主题中更改#wpadminbar的CSS背景定义。我可以(并且已经)更新/wp-admin/css/colors/theme/colors。min.css文件,但想知道是否有更干净的方法?是否有我可以在函数中使用的过滤器。php是否要更新此特定样式?

我找到了这种方法,但它是一种钝器,取代了整个CSS文件:

http://wp-snippets.com/custom-admin-css/

如果有关系,我发现顶部栏和左列的单色在视觉上很奇怪,因此我手动更新了#wpadminbar,以使用分配给#adminmenu背景的中色调。wp子菜单样式。这使得顶部栏比左列略暗。

谢谢你的建议,我应该怎样做才能更干净。

1 个回复
最合适的回答,由SO网友:Pat J 整理而成

您可以使用wp_add_inline_style() 函数重写已排队样式表中的样式:

add_action( \'admin_enqueue_scripts\', \'wpse127850_css_overrides\' );
function wpse127850_css_overrides() {    
     wp_add_inline_style( \'color\', \'.mycolor { background: #ccc; }\' );
}
您需要找到想要影响的样式表的句柄——我已经猜到了color 但不能保证我是对的。

参考文献wp_add_inline_style()

  • admin_enqueue_scripts hook
  • Edited to answer questions from the comments

    <函数名可以是您想要的任何名称——它只需与add_action() 呼叫
  • color 是CSS文件的“句柄”--如果查看管理页面的源代码,您将看到所有样式表的调用方式如下:

    <link rel=\'stylesheet\' 
     id=\'the-erudite-css\' 
     href=\'http://example.com/wp-content/themes/the-erudite/css/erudite.css?ver=3.8\'
     type=\'text/css\' media=\'all\' />
    
    Theid 部分包含CSS文件的句柄,后跟-css. 在我的示例中,句柄是the-erudite.

    我之所以知道这一点,是因为有一天我去寻找这种能力,并通过Google和Codex 正在搜索。这个WordPress Codex 对于您正在尝试的任何WordPress开发都是一个极好的资源。如果你还没有,你应该访问它,可能还应该把它作为书签

  • 结束

    相关推荐

    Too many actions/filters!

    这里是wordpress的新成员。动作/过滤器的概念本身并不难理解。令我不知所措的是大量可用的操作和过滤器。当我阅读教程/指南时,他们会说“只需将此功能添加到wp\\U head操作或after\\U setup\\u主题”。如果没有这些教程,我究竟如何知道将该函数与该操作挂钩?作为一个初学者,我怎么会知道什么是合适的操作?有没有关于如何导航的建议?谢谢