有没有一种简单的方法让每个页面都有一个新的侧边栏?

时间:2011-10-31 作者:davidscolgan

我是我的小型开发团队的程序员,还有内容编辑器和设计者。我的同事希望能够为他们创建的每个新页面添加不同的侧栏,而不必使用PHP代码。

是否有插件或其他方式允许他们为创建的新页面创建新的小部件侧栏?

1 个回复
SO网友:Rarst

注册侧栏只是一个函数调用,没有理由不能在某些逻辑上运行它。以下是我在当前主题中编写(并使用)的代码:

$pages = get_pages();

foreach ( $pages as $page ) {

    register_sidebar( array(
        \'name\' => "Page: {$page->post_title}",
        \'id\' => "sidebar-page-{$page->post_name}",
        \'description\' => "Widgetized area after content of \\"{$page->post_title}\\" page.",
        \'before_widget\' => \'<div id="%1$s" class="widget %2$s">\',
        \'after_widget\' => \'</div>\'
        ));
}
然后,在页面模板调用侧栏中,遵循相同的ID约定,就可以设置了。

结束

相关推荐

List all sidebar names?

我列出了所有这样的侧边栏:global $wp_registered_sidebars; echo \'<pre>\'; print_r($wp_registered_sidebars); echo \'</pre>\' 所以我得到了如下结果:Array ( [sidebar-1] => Array ( [name] => Sidebar #1&

有没有一种简单的方法让每个页面都有一个新的侧边栏? - 小码农CODE - 行之有效找到问题解决它

有没有一种简单的方法让每个页面都有一个新的侧边栏?

时间:2011-10-31 作者:davidscolgan

我是我的小型开发团队的程序员,还有内容编辑器和设计者。我的同事希望能够为他们创建的每个新页面添加不同的侧栏,而不必使用PHP代码。

是否有插件或其他方式允许他们为创建的新页面创建新的小部件侧栏?

1 个回复
SO网友:Rarst

注册侧栏只是一个函数调用,没有理由不能在某些逻辑上运行它。以下是我在当前主题中编写(并使用)的代码:

$pages = get_pages();

foreach ( $pages as $page ) {

    register_sidebar( array(
        \'name\' => "Page: {$page->post_title}",
        \'id\' => "sidebar-page-{$page->post_name}",
        \'description\' => "Widgetized area after content of \\"{$page->post_title}\\" page.",
        \'before_widget\' => \'<div id="%1$s" class="widget %2$s">\',
        \'after_widget\' => \'</div>\'
        ));
}
然后,在页面模板调用侧栏中,遵循相同的ID约定,就可以设置了。

相关推荐

Searchresult sidebar change

那么,searchresult页面侧栏位于哪里?例如,在searchresult页面中,有一个“A”侧栏。但是,我想将其更改为“B”侧栏。我看着search.php 但无法理解侧边栏的来源。

有没有一种简单的方法让每个页面都有一个新的侧边栏? - 小码农CODE - 行之有效找到问题解决它

有没有一种简单的方法让每个页面都有一个新的侧边栏?

时间:2011-10-31 作者:davidscolgan

我是我的小型开发团队的程序员,还有内容编辑器和设计者。我的同事希望能够为他们创建的每个新页面添加不同的侧栏,而不必使用PHP代码。

是否有插件或其他方式允许他们为创建的新页面创建新的小部件侧栏?

1 个回复
SO网友:Rarst

注册侧栏只是一个函数调用,没有理由不能在某些逻辑上运行它。以下是我在当前主题中编写(并使用)的代码:

$pages = get_pages();

foreach ( $pages as $page ) {

    register_sidebar( array(
        \'name\' => "Page: {$page->post_title}",
        \'id\' => "sidebar-page-{$page->post_name}",
        \'description\' => "Widgetized area after content of \\"{$page->post_title}\\" page.",
        \'before_widget\' => \'<div id="%1$s" class="widget %2$s">\',
        \'after_widget\' => \'</div>\'
        ));
}
然后,在页面模板调用侧栏中,遵循相同的ID约定,就可以设置了。

相关推荐

My widgets do not save

每次我保存我的小部件并离开页面时,我的小部件都会消失。侧边栏已完全清空,不会保存任何更改。控制台或PHP日志中没有任何错误。如果我将小部件直接复制并保存在数据库中widgets_text, 它们将被显示,但我仍然无法在侧边栏中添加或删除任何内容。这只发生在我的右侧边栏上,左侧边栏工作正常,但它们都以相同的方式注册。这是我注册侧边栏的方式:function my_widgets_init() { register_sidebar( array ( \'name\'