我创建了一个模板category-beers.php,它应该显示来自单个类别的所有帖子。所有帖子应显示在表格中。一切都很好,但这段代码只显示3篇最近的帖子。我应该编辑什么,以显示此类别中的所有帖子?
<table class="drinked-beers">
<tr>
<th>Beer</th>
<th>Consumer</th>
<th>I drinked this beer on </th>
<th>Style</th>
<th>Note</th>
</tr>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<tr>
<td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>
<td><?php the_author(); ?></td>
<td><?php the_date(''); ?> </td>
<td><?php the_tags(''); ?> </td>
<td><?php echo get_post_meta($post->ID, 'my-note', true); ?></td>
</tr>
<?php endwhile; endif; ?>
</table>
答案 0 :(得分:0)
我没有对此进行过测试,但我认为它会实现您的目标。
<?php
$categories = get_the_category();
$category_id = $categories[0]->cat_ID;
$args = array( 'category' => $category_id, 'post_type' => 'post' , 'numberposts'=>-1);
$posts = get_posts( $args );
foreach ($posts as $post){
setup_postdata($post);?>
<tr>
<td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>
<td><?php the_author(); ?></td>
<td><?php the_date(''); ?> </td>
<td><?php the_tags(''); ?> </td>
<td><?php echo get_post_meta($post->ID, 'my-note', true); ?></td>
</tr>
<?php
}