将单独的<hx>标记添加到侧栏中的小部件标题

时间:2012-10-23 作者:wasim kazi

在我的侧边栏中,每个小部件标题都包含在<h2> 标签。

我在侧边栏中使用了4个小部件,我希望前2个小部件标题如下<h2> 另2个为<h4>.

我改变了我的职能。php如下所示:

\'before_title\' => \'<h4>\', 
\'after_title\' => \'</h4>\',
但这会改变所有标题
如何解决此问题?

1 个回复
最合适的回答,由SO网友:Mridul Aggarwal 整理而成

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;
}

结束

相关推荐

Remove Widgets in Dashboard

另一个noob问题。。。当作者登录并访问其仪表板时,他们会看到各种小部件,例如Internet Explorer警告、WordPress动态新闻。是否要为所有用户(现在和将来)删除所有这些内容,以便他们只看到“快速按”&;\'现在的小部件?谢谢