如何检索Widget标题/数据

时间:2014-12-08 作者:Ahmed Saad

我使用此代码来显示某些侧栏的小部件:

$sidebar_id = \'sidebar1\';
$sidebars_widgets = wp_get_sidebars_widgets();
$widget_ids = $sidebars_widgets[$sidebar_id]; 
    foreach( $widget_ids as $id ) {
    echo \'<li><a href="#\'.$id.\'">\'.$id[\'title\'].\'</a></li>\';
}
我正在尝试使用$id[\'title\'], 但它不起作用。

2 个回复
SO网友:Ahmed Saad

找到了一种“肮脏”的方法:

这是我的代码:

$sidebar_id = \'sidebar1\';
$sidebars_widgets = wp_get_sidebars_widgets();
$widget_ids = $sidebars_widgets[$sidebar_id]; 
    foreach( $widget_ids as $id ) {
        $wdgtvar = \'widget_\'._get_widget_id_base( $id );
        $idvar = _get_widget_id_base( $id );
        $instance = get_option( $wdgtvar );
        $idbs = str_replace( $idvar.\'-\', \'\', $id );
        echo \'<li><a href="#\'.$id.\'">\'.$instance[$idbs][\'title\'].\'</a></li>\';
    }

SO网友:RachieVee

如果您只想显示来自特定侧栏的所有小部件,请尝试dynamic_sidebar. 抄本示例:

<?php if ( is_active_sidebar( \'left-sidebar\' ) ) : ?>
    <ul id="sidebar">
        <?php dynamic_sidebar( \'left-sidebar\' ); ?>
    </ul>
<?php endif; ?>
如果您试图获取特定的小部件并显示它,请尝试the_widget. 此示例取自“类别”小部件:

<?php the_widget( \'WP_Widget_Links\'); ?>
如果以上两种方法都没有帮助,您可能需要向我们提供更多详细信息,以了解您试图做些什么来获得更多答案。祝你好运

结束

相关推荐

Multiple widgets in wordpress

我已经创建了一个wordpress小部件。它在小部件选项中有一个下拉列表。下拉列表包含“facebook”和“twitter”。如果管理员选择“twitter”,那么twitter关注者计数将显示在小部件中,与facebook的情况类似。使用jquery,该计数显示在id为“social count”的div中。当页面加载时,jquery ajax将获取计数并将其插入到“社交计数”中。问题是它在单个实例中运行良好。但是,如果在侧栏中添加了2个实例,则在这两个实例中都会显示最新的计数,因为我使用的是$(“.