默认情况下,帖子数设置为5,因此您必须根据自己的喜好进行设置。如果要显示所有帖子,那么-1
, 还有你想要的号码。
您还应该将函数放在循环之外(就像在第二个循环中一样foreach
), 下面是您的优化代码:
<?php
$args = array(
\'child_of\' => 1,
);
$categories = get_categories($args);
if (count($categories)) {
?>
<ul>
<?php
foreach ($categories as $category) {
?>
<li><a><?php echo $category->name; ?></a>
<ul>
<?php
$args = array(
\'posts_per_page\' => -1, // query ALL posts
\'post_status\' => \'publish\',
\'cat\' => $category->term_id,
);
$query = new WP_Query($args);
while ($query->have_posts()) {
$query->the_post();
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php
}
wp_reset_postdata();
?>
</ul></li>
<?php
}
?>
</ul>
<?php
}
?>