到目前为止,自定义侧边栏已经变得轻而易举,除非它出现在博客“类别”中。
请注意“页面”版本 - http://70.87.35.71/~life/?page_id=87
的完美结果但是相同的侧边栏具有不同的元素版本 - http://70.87.35.71/~life/?cat=1
为什么侧栏在类别部分下看起来很糟糕,如何让它看起来像'Page'版本。
我的侧边栏代码位于
之下<div id="sidebar" class="clearfix">
<?php
if ( !in_category('1') ) {
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Sidebar') )
{}
}
else {
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Blog') )
{}
}
?>
</div> <!-- end sidebar -->
答案 0 :(得分:1)
无需检查function_exists。它自WordPress版本2.1以来就存在。
您的显示问题是由于侧边栏博客侧边栏未正确注册。
add_action( 'widgets_init', 'add_blog_sidebar' );
function add_blog_sidebar() {
register_sidebar(array(
'name' => 'Blog Sidebar',
'id' => 'blog',
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h3 class="widgettitle">',
'after_title' => '</h3>',
));
}
需要使用前部窗口小部件和标题参数才能进行样式化。
调用动态侧边栏:
if ( is_category('1') dynamic_sidebar( 'blog' );
else dynamic_sidebar( 'sidebar');
要了解有关侧边栏的所有信息,请查看Justin Tadlock's sidebar tutorial.
答案 1 :(得分:0)
尝试将其更改为:
<?php
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Blog') )
{}
?>
remove the if else statement
。