Неправильный стиль боковой панели WordPress - dynamic_sidebar () - PullRequest
0 голосов
/ 11 ноября 2011

Пользовательские боковые панели до сих пор были на одном дыхании, за исключением того, что они доходят до блога «Категория».

Обратите внимание, как это отлично выглядит здесь, в версии «Страница» - http://70.87.35.71/~life/?page_id=87

но одна и та же боковая панель имеет разные элементы версии категории - http://70.87.35.71/~life/?cat=1

Почему боковая панель выглядит так дрянно, когда находится под разделом категории, и как мне сделать ее похожей на версию «Страница».

Код моей боковой панели ниже

<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 -->

Ответы [ 2 ]

1 голос
/ 11 ноября 2011

Нет необходимости проверять, существует ли function_exists. Он существует с версии 2.1 WordPress.

Ваша проблема с отображением связана с тем, что боковая панель блога не зарегистрирована должным образом.

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>',
    ));
}

Виджет before и аргументы before title необходимы для стилизации.

Вызов вашей динамической боковой панели:

if ( is_category('1') dynamic_sidebar( 'blog' );
    else dynamic_sidebar( 'sidebar');

Чтобы узнать все, что нужно знать о боковых панелях, посмотрите Учебник Джастина Тэдлока по боковой панели.

0 голосов
/ 11 ноября 2011

Попробуйте изменить его на:

<?php     
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Blog') )
    {}
?>

remove the if else statement.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...