【发布时间】:2011-05-21 14:38:09
【问题描述】:
是否可以获得我在侧边栏中启用的小部件的标题,以便我可以将其插入为我的类属性的名称?
例如:
'before_title' => <h2 class="title of the widget">',
如果我检查元素,我想看到:
<h2 class="author"> 和 <h2 class="links"> 等...
谢谢
【问题讨论】:
标签: wordpress
是否可以获得我在侧边栏中启用的小部件的标题,以便我可以将其插入为我的类属性的名称?
例如:
'before_title' => <h2 class="title of the widget">',
如果我检查元素,我想看到:
<h2 class="author"> 和 <h2 class="links"> 等...
谢谢
【问题讨论】:
标签: wordpress
这绝对是可能的,但如果你想动态地做到这一点,你需要使用过滤器。
dynamic_sidebar_params 过滤器应该适合您。如果您不熟悉过滤器的作用,基本上过滤器允许您在内容显示在屏幕上或保存在数据库中之前对其进行编辑。在此处查看更多信息:http://codex.wordpress.org/Plugin_API/Filter_Reference
在dynamic_sidebar_params 过滤器中,传递的数组具有以下结构(我是通过 print_r 得到的)
Array
(
[0] => Array
(
[name] => Primary Widget Area
[id] => primary-widget-area
[description] => The primary widget area
[before_widget] => <li id="search-2" class="widget-container widget_search">
[after_widget] => </li>
[before_title] => <h3 class="widget-title">
[after_title] => </h3>
[widget_id] => search-2
[widget_name] => Search
)
[1] => Array
(
[number] => 2
)
)
也就是说,您所要做的就是在返回之前编辑$params 数组。您可能还需要执行一些条件逻辑来获得您想要的确切类,但我会留给您。
这是一个例子:
function my_edit_widget_func($params) {
$params[0]['before_title'] = '<h3 class="' . $params[0]['widget_name'] . '">' ;
return $params;
}
add_filter('dynamic_sidebar_params', 'my_edit_widget_func');
【讨论】: