Register multiple sidebars

时间:2013-05-12 作者:Pieter Goosen

我正在注册我的边栏,如下所示:

$sidebars = array (
            \'sidebar-10\'       => \'Main Sidebar\',
            \'sidebar-11\'       => \'Homepage Area One\',
            \'sidebar-12\'       => \'Homepage Area Two\',
            \'sidebar-13\'       => \'Homepage Area Three\',
            \'sidebar-14\'       => \'Homepage Area Four\',
            \'sidebar-15\'       => \'Footer Area One\',
            \'sidebar-16\'       => \'Footer Area Two\',
            \'sidebar-17\'       => \'Footer Area Three\',
            \'sidebar-18\'       => \'Footer Area Four\',
            \'sidebar-19\'       => \'After first post area\',
            \'sidebar-20\'       => \'Below header area\',
            );
foreach ( $sidebars as $sidebar ) {
register_sidebar(
    array (
            \'name\'          => __( $sidebar, \'pietergoosen\' ),
            \'id\'            => $sidebar,
            \'before_widget\' => \'<aside id="%1$s" class="widget %2$s">\',
            \'after_widget\'  => \'</aside>\',
            \'before_title\'  => \'<h3 class="widget-title">\',
            \'after_title\'   => \'</h3>\',
    ));
}
Main Sidebar 是我的小部件的名称。我需要设置sidebar-10 作为小部件id。与我的数组中的其余部分相同。

有没有解决这个问题的建议

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

您只需要使用foreach的备用语法。从php manual:

foreach构造提供了一种在数组上迭代的简单方法。foreach仅适用于数组和对象,当您尝试在具有不同数据类型的变量或未初始化的变量上使用它时,它将发出错误。有两种语法:

foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement
例如:

foreach ( $sidebars as $id => $sidebar) {
register_sidebar(
    array (
            \'name\'          => __( $sidebar, \'pietergoosen\' ),
            \'id\'            => $id,
            \'before_widget\' => \'<aside id="%1$s" class="widget %2$s">\',
            \'after_widget\'  => \'</aside>\',
            \'before_title\'  => \'<h3 class="widget-title">\',
            \'after_title\'   => \'</h3>\',
    ));
}

结束

相关推荐

Admin sidebar customization

我的新客户wordpress站点在管理侧栏中没有插件、外观或任何其他默认项。谁能告诉我这些是怎么出现的吗。该站点正在主站点的子目录中运行。它有自己的wordpress安装。主题是前面的rttheme16。提前谢谢。