多个动态侧边栏问题-第一个侧边栏无法正常工作

时间:2012-01-11 作者:rpeg

这是我的职责:

function ec_register_sidebars() { 
register_sidebars( 3, 
    array( 
    \'name\' => \'Sidebar %d\', 
    \'id\' => "sidebar-$i", 
    \'before_widget\' => \'<li id="%1$s" class="widget %2$s">\', 
    \'after_widget\' => \'</li>\', 
    \'before_title\' => \'\', 
    \'after_title\' => \'\' 
    ) 
); 
这个does not work:

<?php if ( is_active_sidebar( \'Sidebar 1\' ) ) : ?> 
<?php dynamic_sidebar( \'Sidebar 1\' ); ?> 
    <?php else : ?> 
    No primary sidebar content 
<?php endif; ?>
BUT 如果我将*is\\u active\\u侧边栏*更改为“侧边栏2”或“侧边栏3”,它会起作用。例如this works:

<?php if ( is_active_sidebar( \'Sidebar 2\' ) ) : ?> 
<?php dynamic_sidebar( \'Sidebar 1\' ); ?> 
    <?php else : ?> 
    No primary sidebar content 
<?php endif; ?>
我不明白为什么会这样。有什么想法吗?

1 个回复
SO网友:dwenaus

您的name属性似乎缺少sprintf特性。该行应为

\'name\' => sprintf(__(\'Sidebar %d\'), $i ),
否则%d根本不引用$i。此外,看起来您应该调用侧栏id,而不是名称。这个名字只是为了好看。例如,一旦上述问题得到解决,这将起作用:

<?php dynamic_sidebar( \'sidebar-1\' ); ?> 

结束

相关推荐

Functions.php错误-尝试更改主题时

在尝试替换wordpress主题后,它表示功能。主题目录中的php文件(最后一行)不正常分析错误:语法错误,意外的$end in/主题/主题名/功能。php在线1500第1500行实际上是唯一的符号?>EDIT好的,这是函数的pastebin链接。有错误的php文件http://pastebin.com/by5TtZq6p、 我想知道——既然它应该是一个现成的模板——那么它怎么可能是错误的——它应该是有效的p、 可能是因为改变wordpress的设置或使用了一些不好的插件而导致的混乱?(如perma