首页 » wordpress » 正文

如何让wordpress显示所有分类下所有文章列表,分级显示

wordpress是我们经常用到的开源博客,即使他在强大,有时也满足不了用户的需求,今天小涛就遇到了这个问题,就想如何让所有分类和分类下的所有文章全部一块显示出来,大体思路是这样的,先读取数据库执行分类循环,然后再执行查询数据库,读取该分类下的文章,闲话不说了,直接上代码更明了……

<?php

//for each category, show all posts

$cat_args=array(

‘orderby’ => ‘name’,

‘order’ => ‘ASC’

);

$categories=get_categories($cat_args);

foreach($categories as $category) {

$args=array(

‘showposts’ => -1,

‘category__in’ => array($category->term_id),

‘caller_get_posts’=>1

);

$posts=get_posts($args);

if ($posts) {

echo ‘<p>Category: <a href=”‘ . get_category_link( $category->term_id ) . ‘” title=”‘ . sprintf( __( “View all posts in %s” ), $category->name ) . ‘” ‘ . ‘>’ . $category->name.’</a> </p> ‘;

foreach($posts as $post) {

setup_postdata($post); ?>

<p><a href=”<?php the_permalink() ?>” rel=”bookmark” title=”Permanent Link to <?php the_title_attribute(); ?>”><?php the_title(); ?></a></p>

<?php

} // foreach($posts

} // if ($posts

} // foreach($categories

?>

使用方法

将以上代码添加到想要显示的模版里即可,如果多次使用可以封装到公共函数里,多次使用。

输出格式

分类一

文章一

文章二

文章三

分类二

文章一

文章二

文章三

技术分享,技术交流,小涛与您共同成长

本文共 1 个回复

  • 奇遇 2013/12/28 22:42

    感谢 大概实现了效果 就是显示样式还得自己再调整调整

发表评论