Products
GG网络技术分享 2025-03-18 16:05 0
让WordPress一个页面显示全部分类的文章-目录聚合页
1、复制一个page.php文件改为page-cats.php,
2、在这个page-cats.php文件中找到以下代码
<?php the_content(); ?>并在该代码后面添加以下目录聚合页代码
<?php$cats = get_categories();
foreach ( $cats as $cat ) {
query_posts( 'showposts=7&cat=' . $cat->cat_ID );
?>
<h3><?php echo $cat->cat_name; ?></h3>
<ul class="sitemap-list">
<?php while ( have_posts() ) { the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php } wp_reset_query(); ?>
</ul>
<?php } ?>
3、page-cats.php顶部加入以下代码:
<?php/*
Template Name: Tags聚合
*/
?>
Tags聚合是模板名称。
保存。
4、在WordPress后台新建一个页面,内容空白,固定链接地址改为cats,模板选择刚刚保存的Tags聚合(分类目录则命名为 目录聚合)。
到这里,我们刷新一下刚才新建的这个cats页面看看是否已经显示全部分类下的文章了?以上代码默认显示每个分类的10篇文章,如果需要显示所有文章,只需要把代码中的10改为1000或更大的数值即可。
让WordPress一个页面显示几个分类的文章
这个显示几个分类的文章的实现方法跟显示所有分类文章的方法是一样的,只需要将第2步中的代码
$cats = get_categories();
改为
$cats = get_categories(array('include' => '1,2,3'));
即可,其中1,2,3就是想要显示的分类ID。
Tag标签聚合页代码:<?php// 得到所有标签列表(1035,1057为标签id,想获取某个标签只需添加进去用逗号隔开,如'include' => '13,57')
$args=array(
'include' => '1035,1057'
);
$tags = get_tags($args);
// 循环所有标签
foreach ($tags as $tag) {
// 得到标签ID
$tagid = $tag->term_id;
// 得到标签下所有文章
query_posts("showposts=7&tag_id=$tagid");
// 7代表每页显示7篇文章
?>
<!-- 输出标签标题及链接 -->
<h2>标签: <a href="<?php echo get_tag_link($tagid);?>" title="<?php echo $tag->name?>"><?php echo $tag->name; ?></a></h2>
<!-- 输出所有文章的标题及链接 -->
<ul>
<?php while (have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"> <?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>
<?php } ?>
Demand feedback