每个第三个小部件的最后一个类

时间:2014-04-25 21:13:01

标签: php wordpress

我正在尝试将最后一个类添加到每个第三个小部件。但是通过这个功能我可以添加" last"类到最后一个小部件。

function widget_last_classes($params) {
    global $widget_num; 
    $this_id = $params[0]['id'];
    $arr_registered_widgets = wp_get_sidebars_widgets();
    if(!$widget_num) {
        $widget_num = array();
    }
    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="';
    if($widget_num[$this_id] == count($arr_registered_widgets[$this_id])) {
        $class .= 'last ';
    }
    $params[0]['before_widget'] = preg_replace('/class=\"/', "$class", $params[0]['before_widget'], 1);
    return $params;
}
add_filter('dynamic_sidebar_params','widget_last_classes');

1 个答案:

答案 0 :(得分:2)

替换
    if($widget_num[$this_id] == count($arr_registered_widgets[$this_id])) {
随着
    if (($widget_num[$this_id] % 3) == 0) {