没有名称的侧栏小部件注册,如何将其分配给新命名的侧栏小部件?

时间:2010-09-14 作者:Scott B

在我当前的主题版本中,我正在用名称注册侧栏。然而,在以前的版本中,我只有一个侧边栏,并且没有这样的名称注册它。。。

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'before_widget\' => \'<div class="menu side %2$s">\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h4>\',
        \'after_title\' => \'</h4>\',
    ));
但现在在我更新的主题中,我注册了几个侧边栏,并为它们命名。然而,当我将旧主题更新到最新版本时,没有名称注册的边栏小部件似乎被任意分配到一个新的“命名”边栏,但不是我需要的边栏。我需要将未命名的侧边栏小部件重新分配给更新主题中名为“侧边栏”的小部件。

这是我新的侧边栏注册。。。

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'name\' => \'Featured_Home\',
        \'before_widget\' => \'<div class="featured-home">\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h2>\',
        \'after_title\' => \'</h2>\',
    ));

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'name\' => \'Featured_Inside\',
        \'before_widget\' => \'<div class="featured-inside">\',
        \'after_widget\' => \'</div>\', 
        \'before_title\' => \'<h2>\',
        \'after_title\' => \'</h2>\',
    ));

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'name\' => \'Featured_Category\',
        \'before_widget\' => \'<div class="featured-category">\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h4>\',
        \'after_title\' => \'</h4>\',
    ));

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'name\' => \'Sidebar\',
        \'before_widget\' => \'<div class="menu side %2$s">\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h4>\',
        \'after_title\' => \'</h4>\',
    ));

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'name\' => \'Home_PreFooter\',
        \'before_widget\' => \'<div class="footer-pre-home">\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h4>\',
        \'after_title\' => \'</h4>\',
    ));

if ( function_exists(\'register_sidebar\') )
    register_sidebar(array(
        \'name\' => \'Inside_PreFooter\',
        \'before_widget\' => \'<div class="footer-pre-inside">\',
        \'after_widget\' => \'</div>\',
        \'before_title\' => \'<h4>\',
        \'after_title\' => \'</h4>\',
    )); 

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

尝试移动的注册Sidebar 边栏是第一个。

我的印象是,在这种情况下,widget应该移动到那个特殊的“未分配”区域,但这可能只适用于主题之间,而不适用于同一主题中的更改。

结束

相关推荐