如果要在后端设置提要栏的样式,则无需执行任何其他操作。使用发布的代码时,WordPress为侧栏创建的html包含一个div,其id属性等于侧栏的id。
考虑以下代码:
function custom_colored_sidebar() {
register_sidebar( array(
\'name\' => \'Test Sidebar\',
\'id\' => \'sidebar-test\',
\'before_widget\' => \'<aside id="%1$s" class="widget %2$s">\',
\'after_widget\' => "</aside>",
\'before_title\' => \'<h3 class="widget-title">\',
\'after_title\' => \'</h3>\',
) );
add_action(\'admin_enqueue_scripts\', \'widget_style\');
}
function widget_style( $page ) {
if ( $page == \'widgets.php\' ) {
echo \'<style>div#sidebar-test { background-color:#f00; }</style>\';
}
}
add_action(\'init\', \'custom_colored_sidebar\');
如您所见,我注册了一个带有id的侧栏
\'sidebar-test\'
然后我用
\'admin_enqueue_scripts\'
在id为的div上添加一些样式
\'sidebar-test\'
仅当当前管理页为
\'widgets.php\'
.
正确的方法是将外部css排队,但为了简单起见,我只是附和了这种风格。
结果如下:

正如您所看到的,我为侧边栏小部件设计了样式,没有其他功能。
您可以注意到,id等于边栏id的div位于小部件内部,如果要设置小部件包装器或标题的样式,唯一的方法是使用javascript,类似于:
jQuery( document ).ready(function($) {
$(\'#sidebar-test\').closest(\'.widgets-holder-wrap\').addClass(\'sidebar-test-wrapper\');
});
使用此代码(应仅在
widgets.php
第页,附加类
\'sidebar-test-wrapper\'
到目标侧栏的容器中,以便您可以对其进行样式设置。
如果要设置提要栏名称的样式,可以使用类\'sidebar-name\'
, 在这种情况下:
.sidebar-test-wrapper div.sidebar-name { /* some css here */ }
.sidebar-test-wrapper div.sidebar-name h3 { /* some css here */ }
.sidebar-test-wrapper div.sidebar-name .sidebar-name-arrow { /* some css here */ }