У меня проблема с выводом сообщений на страницу. Я пытаюсь получить сообщения определенной категории, но когда сообщения загружаются, они отображаются 5 раз. Я уже пытался изменить количество сообщений для просмотра в панели администратора, но это не влияет на вывод сообщений.
Это мой код:
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php
query_posts( array ( 'category_name' => 'nieuwsitem', 'posts_per_page' => 20 ) );
while ( have_posts() ) : the_post(); ?>
<?php $myposts = get_posts('');
foreach($myposts as $post) :
setup_postdata($post);
?>
<div class="post-item">
<div class="thedate"><?php echo get_the_time('d/m/Y', $post->ID); ?></p></div>
<div class="post-info">
<h2 class="post-title">
<a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>">
<?php the_title(); ?>
</a>
</h2>
</div>
<div class="post-content">
<?php the_content(); ?>
</div>
</div>
<?php endforeach; wp_reset_postdata(); ?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
Заранее спасибо!
WP_Query
, а неquery_posts
иget_posts
.get_posts
не требует использования цикла. Здесь вы изменяете запрос по умолчанию, перебирая эти сообщения (while
), и внутри каждого цикла выполняется ДРУГОЙ циклforeach
, который выводит каждое сообщение, поэтому вы получаете такое поведение. Вместо этого используйте новыйWP_Query
и простой обычный цикл WordPress. - person Ennui   schedule 26.11.2013WP_Query
. - person Ennui   schedule 26.11.2013