我正在使用WordPress。在我的网站的后端,有一个侧边栏。在这个侧边栏上,有n个小部件。我想在第一个小部件中添加一个CSS类,而不是其余的。
我该如何处理?
请帮忙!
答案 0 :(得分:1)
您应该制作动态侧边栏,为小部件的类或ID添加编号。 这是关于它的好帖子: http://wordpress.org/support/topic/how-to-first-and-last-css-classes-for-sidebar-widgets
答案 1 :(得分:0)
你想要改变的是什么?你可以将html放到小部件中,这样你可以复制小部件的内容,如果它很简单 - 你也可以将ID-s和类放入html(并编辑主题的style.css文件中的css),或者你可以甚至直接使用style=""
标签选项的css。如果它不是简单的那么它已经有ID和/或类 - 所以你应该使用firebug获取这些ID和类,然后在style.css中编辑样式。
答案 2 :(得分:0)
我对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
)。
编辑:接受的答案可能实际上解决了这个问题,所以请遵循这个建议。
希望有帮助...