是否可以从小部件中动态获取侧栏参数?也就是说,我正在尝试访问before_widget
/after_widget
/before_title
/after_title
/name
包含侧栏的参数。
假设我们有一个这样注册的提要栏:
register_sidebar( array(
\'name\' => "Homepage Sidebar",
\'id\' => \'homepage-sidebar\',
\'before_widget\' => \'<div id="%1$s" class="widget-container %2$s">\',
\'after_widget\' => \'</div>\',
\'before_title\' => \'<h2 class="widget-title">\',
\'after_title\' => \'</h2>\',
) );
如何从我的小部件内部访问这些值
widget()
作用比如,我该怎么做这样的事情:
public function widget( $args, $instance ) {
// outputs the content of the widget
if ($someCondition)
echo $sidebar->before_title . \'My widget title\' . $sidebar->before_title;
echo \'You are looking at \' . $sidebar->name;
}
这可能吗?
最合适的回答,由SO网友:Stephen Harris 整理而成
参数(作为数组)作为提供给widget
方法第二个论点,$instance
, 保存小部件特定实例的选项。
我通常的设置是:
function widget($args, $instance){
//Extract the widget-sidebar parameters from array
extract($args, EXTR_SKIP);
echo $before_widget;
echo $before_title;
//Display title as stored in this instance of the widget
echo esc_html($instance[\'title\']);
echo $after_title;
//Widget content
echo $after_widget;
}