Так что я надеюсь, что заголовок не слишком запутан, позвольте мне попытаться сломать его.WP; get_sidebar не играет хорошо с get_content, когда внутри цикла запрашивает страницы
У меня есть файл content-page.php, в котором есть функции get_content и get_sidebar. Если я перейду к этой странице в интерфейсе, я увижу как мой контент, так и боковую панель.
На странице home.php, я загружаю серию страниц с помощью $ the_query = новый WP_Query, а затем внутри этого запроса с помощью цикла и внутри этого цикла, называя контент-page.php.
Проблема в том, что если страница, загружаемая на домашнюю страницу home.php, имеет боковую панель, по какой-то причине после боковой панели ничего не загружается, т.е. get_content()
возвращает ничего, comments_template()
возвращает ничего, и т.д.
Здесь нет (очень) упрощенная версия разметки, Домашняя страница:
$the_query = new WP_Query(array(
'post_type' => 'page'));
$x = 0;
while ($the_query->have_posts()) :
$the_query->the_post();
get_template_part('content', 'page');
$x++;
endwhile;
wp_reset_query();
контента page.php:
<article <?php post_class(); ?>>
<header>
<h1><?php the_title(); ?></h1>
</header>
<div class="entry-content">
<?php include(TEMPLATEPATH . '/sidebar.php'); ?>
<?php the_content(); ?>
</div><!-- .entry-content -->
</article><!-- #post-<?php the_ID(); ?> -->
sidebar.php :
<div id="secondary" class="widget-area" role="complementary">
<?php do_action('before_sidebar');
dynamic_sidebar('sidebar-1'); ?>
</div><!-- #secondary .widget-area -->
Есть ли что-то очевидное, что я здесь отсутствует? Некоторое время работал над этим. Как всегда, любая помощь очень ценится.
Я пытаюсь понять вашу проблему ... Вы говорите, что проблема заключается в том, что если страница, загружаемая на домашнюю страницу home.php, имеет боковую панель, по какой-то причине после боковой панели ничего не загружается, т.е. get_content() ничего не возвращает, comment_template() ничего не возвращает и т. д. «Что вы имеете в виду? Содержимое, возвращаемое из цикла, не будет содержать боковую панель. Боковая панель будет частью шаблона страницы и, как правило, не будет связана с содержанием любого сообщения. –
Привет, Джим, это точно. Вот почему я загружаю боковую панель в цикле. Это тема, которую я создаю там, где я предоставляю пользователю возможность выбрать ту боковую панель, которую они хотят отображать на каждой странице/почте. Таким образом, у него может быть 1-й зарегистрированный боковой экран на странице-x и 2-й дисплей на странице-y. Все это отлично работает, когда вы просто заходите на страницу. Но если я просматриваю все страницы домашней страницы с помощью 'WP_Query', чтобы фильтровать только страницы, количество страниц и т. Д., Вызывающий боковую панель, похоже, останавливает другие функции от загрузки - то есть' get_content() ' –
Ну, я думаю вы просто ответили на свой вопрос! Wordpress не предназначен для вызова боковой панели несколько раз из цикла. –