Не отображается ни sidebar, ни footer.

Все страницы работают прекрасно и в любом браузере, но есть проблема с отображением Sidebar и Footer на странице чтения поста. Что я только не пробовал. Не работает и все. В результате пришел к выводу, что проблема таится в обработке поста, так как без обработки сайдбар и подвал есть, а именно:

ТАК ЕСТЬ сайд бар и подвал

<?php get_header(); ?>

<?php get_footer(); ?>

ТАК ЕСТЬ пост

<?php get_header(); ?>

<div id="content" class="narrowcolumn">

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<div class="post" id="post-<?php the_ID(); ?>">
<div class="post-top">
<div class="post-date">
<?php the_time(‘M’) ?>
<p><?php the_time(‘d’) ?></p>
</div>
<div class="post-title">
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php if ( function_exists(‘the_title_attribute’)) the_title_attribute(); else the_title(); ?>"><?php the_title(); ?></a></h2>
<h3>
<span><?php the_category(‘, ‘) ?></span>
</h3>
<?php if ( function_exists(‘the_tags’)) the_tags(‘<h4>Tagged Under : <span>’, ‘, ‘, ‘ </span></h4>’); ?>
</div>
</div>

<div class="entry clear">
<?php the_content(‘Читать дальше &raquo;’); ?>
</div>

<div class="postmetadata">
<div class="alignleft">
<a><?php comments_number(‘Комментарии отсутствуют’, ‘<span>1</span> Комментарий’, ‘<span>%</span> Комментарий’); ?></a>
</div>
<div class="alignright">
<?php edit_post_link(‘Редактировать’, ”, ‘&nbsp;&nbsp;&nbsp;’); ?>
</div>
</div>
</div>

<?php comments_template(); ?>

<?php endwhile; else: ?>

<p>Sorry, no posts matched your criteria.</p>

<?php endif; ?>

</div>

<?php get_footer(); ?>

Вместе не получается! Подскажите, пожалуйста, как исправить. Не хочется другой шаблон брать и его изменять. На этот уже много времени потратил, а такую ошибку сразу не увидел (

С уважением, Дмитрий.

Вы перемудрили с if’ами и while’ами. Для вывода одиночного поста чаще всего навороты с циклами не нужны. Помочь вам будет непросто не понимая, чего вы хотите сделать и к чему такие запутанные сложности.

А я ничего такого не вижу вот в коде… Обычный цикл как дефолтной теме. На сам бы php файл взглянуть, а то не подсвечивается ничего на форуме…

Вы и правы – это я некорректно себе код в файл single.php скопировал

Проверил еще раз. Все нормально выводится. Только вызова сайдбара нет.

Добавьте, где надо <?php get_sidebar() ?> и будет вам счастье… скорее всего

Добавьте, где надо <?php get_sidebar() ?> и будет вам счастье... скорее всего

Если имя у сайдбара другое, например sidebar_left.php, то вызов уже надо так делать:

<?php include (TEMPLATEPATH . '/sidebar_left.php'); ?>
Если имя у сайдбара другое, например sidebar_left.php, то вызов уже надо так делать:
<?php include (TEMPLATEPATH . '/sidebar_left.php'); ?>

Уточним. Начиная с WP2.5, если имя файла шаблона sidebar-left.php, его можно подключать так:
<php get_sidebar(‘left’); ?>

Moringotto, Но и ваш вариант должен тоже работать.

Уточним. Начиная с WP2.5, если имя файла шаблона sidebar-left.php, его можно подключать так:
<php get_sidebar('left'); ?>

Ю.Б., у меня там нижняя черта стоит 🙂 И у меня в теме вообще название sidebar1.php, думаю залезть как нибудь и поправить.

Ну это я так, для информации. Где как не тут узнавать про новые возможности новых версий? 🙂

у меня там нижняя черта стоит

Ну и что? Даже если слитно напишете – будет работать

У меня сайдбар – это sidebar.php
Я подключал <?php get_sidebar() ?>, но это не помогает. Причем сайдбар у меня подключается в подвале. И, как я уже писал, если нет обработки поста, а указаны только вызов шапки и подвала,в котором вызывается сайдбар – все работает. С чем это связано не пойму.

Возможно, случается какая-то ошибка, и обработка скрипта прерывается до того, как будет вызван сайдбар. Я предпочитаю смотреть ошибки в логах Апача.

Добрый день! Перестал отображаться сайдбар, функция get_sidebar указана. Вот код index.php:

<?php get_header(); ?>

<div id="content-top">
    <div id="menu-bg"></div>
    <div id="top-index-overlay"></div>

    <div id="content" class="clearfix">
        <div id="main-area">
            <?php get_template_part('includes/entry'); ?>            
        </div> <!-- end #main-area-->    
        
        <?php include(TEMPLATEPATH."/sidebar.php");?>
        
    <?php get_footer(); ?>

Вот код файла sidebar.php:

<div id="sidebar">    
 <?php if (get_option('elegantestate_listings') == 'on') include(TEMPLATEPATH . '/includes/sidebar-listings.php'); ?>
 <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Sidebar') ) : ?>
 <?php endif; ?>
</div>
 <!-- end #sidebar -->

Отображается только прописанный элемент

 <?php if (get_option('elegantestate_listings') == 'on') include(TEMPLATEPATH . '/includes/sidebar-listings.php'); ?>

Виджеты, которые в админке я поставил в этот сайдбар, не появились…
Заранее спасибо за помощь…

Anonymous
Отправить
Ответ на: