获取WordPress侧边栏中的第一个小部件的ID或顺序

我正在使用WordPress。在我网站的后端, 有一个侧边栏。在此侧栏上, 有n个小部件。我想在第一个小部件中添加一个CSS类, 而在其余部分中不添加。
我该如何处理?
请帮忙!
#1你应该制作动态侧边栏, 以将编号添加到小部件的类或ID。这是一篇不错的文章:http://wordpress.org/support/topic/how-to-first-and-last-css-classes-for-sidebar-widgets
#2你到底要更改什么?你可以将html放入小部件中, 这样就可以简单地复制小部件的内容-你也可以将ID-s和类放入html中(并编辑主题的style.css文件中的css), 或者可以甚至直接将CSS与style =” ” 标签选项一起使用。如果不是那么简单, 则说明它已经具有ID和/或类-因此你应该使用Firebug获取这些ID和类, 然后在style.css中编辑样式。
#3我对WordPress中的小部件挂钩没有很多经验, 但是我相信这应该可以满足你的要求。

< ?php if( !is_admin() ) { $sidebar_id = 'your-sidebar-id-here'; $sidebars_array = wp_get_sidebars_widgets(); if( isset( $sidebars_array[$sidebar_id] ) & & ( !empty( $sidebars_array[$sidebar_id] ) ) ) { $first_widget = current( $sidebars_array[$sidebar_id] ); add_action( 'widgets_init', 'so4461485_widget_custom', 10000 ); } }function so4461485_widget_custom() { global $wp_registered_widgets, $first_widget; if( empty( $wp_registered_widgets ) ) return; foreach( $wp_registered_widgets as $widget_id => $widget_data_array ) { if( $widget_id != $first_widget ) continue; if( isset( $widget_data_array['classname'] ) ) $wp_registered_widgets[$widget_id]['classname'] .= ' first_widget'; } } ?>

你只需要用有效的补充工具栏ID(即注册补充工具栏时设置的ID)替换your-sidebar-id-here(代码的第3行)。
为了方便起见, 可以将代码放在主题的functions.php中。如果你在放置代码时遇到麻烦, 只需确保你没有嵌套PHP标签即可。(例如< ?php < ?php)。
编辑:接受的答案可能实际上解决了这个问题, 因此请遵循该建议。
【获取WordPress侧边栏中的第一个小部件的ID或顺序】希望有帮助…

    推荐阅读