dynamic_sidebar_params
是允许您在每个小部件的基础上修改这些参数的过滤器。但它会为每个侧边栏触发,因此您需要同时使用这两个侧边栏add_action
&;remove_action
呼叫尝试var_dump
在编写代码之前一次,了解您必须执行的操作
根据请求添加了一个示例此示例根据每个小部件的显示顺序为其添加了一个额外的类,即第一个小部件将具有类“widget-1”,第二个小部件将具有类“widget-2”&;以此类推
function add_first_last_class_to_widget($params) {
STATIC $widget_num = array();
$this_id = $params[0][\'id\'];
$arr_registered_widgets = wp_get_sidebars_widgets();
if (!isset($arr_registered_widgets[$this_id]) || !is_array($arr_registered_widgets[$this_id]))
return $params;
if (isset($widget_num[$this_id]))
$widget_num[$this_id]++;
else
$widget_num[$this_id] = 1;
$class = \'class="widget-\' . $widget_num[$this_id] . \' \';
$params[0][\'before_widget\'] = str_replace(\'class="\', $class, $params[0][\'before_widget\']);
return $params;
}