今天在某个WordPress交流QQ群中看到有个网友向大家求助问wordpress调用的文章每5篇用ul包装起来,php代码怎么写循环,看群里一直也没有人回复,所以想着来WordPress中文社区发出个提问,看能不能得到及时的回答,也好分享给这个网友,我相信很快可以得到答案的。哈哈。
实现这个其实没有什么技术难点,主要就是靠思路,下面是其中的一个思路,您可以参考一下:
<?php $toutal=4;?><!--先设置准备显示几个每5条一个ul包裹起来的块儿,如果是要把所有文章都按照这样的格式显示出来,那就可以通过查询先获取到符合条件的文章的总数,然后用总数除以5得到的就是一共显示的每5条一个ul包裹起来的块儿--> <?php for ($i=1; $i<=$toutal; $i++) {?><!--最外层使用for循环,循环输出每5条一个ul包裹起来的块儿--> <ul> <?php $offset = ($i-1)*5;//设置每次循环需要的偏移量 $args=array( 'post_type'=> 'post', 'posts_per_page' => 5, 'offset' => $offset, ); $wp_query = new WP_Query( $args ); if ( $wp_query->have_posts() ) : while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?> <li><?php the_title();?></li> <?php endwhile; endif; wp_reset_postdata();?> </ul> <?php }?>
上面的方法有个弊端就是,默认的分页功能是没法和这个结合使用的,如果需要使用分页功能,那就需要自己租写分页功能了。
使用上面的方面实现的效果就如下图一样:
图片中我是每两条用一个ul包裹起来了,测试文章比较少,哈哈
1 个回答
实现这个其实没有什么技术难点,主要就是靠思路,下面是其中的一个思路,您可以参考一下:
上面的方法有个弊端就是,默认的分页功能是没法和这个结合使用的,如果需要使用分页功能,那就需要自己租写分页功能了。
使用上面的方面实现的效果就如下图一样:
图片中我是每两条用一个ul包裹起来了,测试文章比较少,哈哈