WordPress文章页调用同分类文章列表的方法,WordPress文章页怎么调用同分类下的文章教程

“Wordpress文章页怎么调用同分类下的文章?”这是我们使用wordpress做网站时有些程序员会遇到的一个问题。对此,今天我就和大家详细的分享一些关于“Wordpress文章页调用同分类文章列表的方法”具体操作指南教程。

通常情况下,在WordPress文章页调用同分类文章,可通过以下方法实现,你可以将相关代码添加到主题的模板文件里使用。一般有两种常见的方式,下面为你详细介绍。

 方法一:使用`WP_Query`自定义查询

你可以在文章单页模板文件(通常是`single.php`)中添加以下代码,来实现调用同分类文章列表:

<?php

// 获取当前文章所属分类

$categories = get_the_category();

if ($categories) {

// 获取第一个分类的ID

$category_id = $categories[0]->term_id;

// 设置查询参数

$args = array(

'category__in' => array($category_id),

'post__not_in' => array(get_the_ID()), // 排除当前文章

'posts_per_page' => 5, // 显示5篇文章,可以根据需要修改

'orderby' => 'date',

'order' => 'DESC'

);

// 实例化WP_Query对象

$related_query = new WP_Query($args);

if ($related_query->have_posts()) {

echo '<h2>同分类文章列表</h2>';

echo '<ul>';

while ($related_query->have_posts()) {

$related_query->the_post();

?>

<li>

<?php the_title(); ?>

</li>

<?php

}

echo '</ul>';

// 重置查询

wp_reset_postdata();

}

}

?>

代码解释:

  1. 获取当前文章分类:借助`get_the_category()`函数来获取当前文章所属的分类,接着选取第一个分类的ID。
  2. 设置查询参数:运用`WP_Query`构建一个新的查询,将查询范围限定为当前分类,同时排除当前文章,并且可以对显示文章的数量、排序方式等进行设置。
  3. 循环输出文章列表:利用`while`循环输出符合条件的文章标题与链接。
  4. 重置查询:使用`wp_reset_postdata()`函数重置查询,防止对后续查询产生影响。

 方法二:使用`get_posts`函数

你也可以使用`get_posts`函数来实现相同的功能,以下是示例代码:

<?php

// 获取当前文章所属分类

$categories = get_the_category();

if ($categories) {

$category_id = $categories[0]->term_id;

// 设置查询参数

$args = array(

'category__in' => array($category_id),

'post__not_in' => array(get_the_ID()),

'numberposts' => 5, // 显示5篇文章,可以根据需要修改

'orderby' => 'date',

'order' => 'DESC'

);

// 获取同分类文章

$related_posts = get_posts($args);

if ($related_posts) {

echo '<h2>同分类文章列表</h2>';

echo '<ul>';

foreach ($related_posts as $post) {

setup_postdata($post);

?>

<li>

<?php the_title(); ?>

</li>

<?php

}

echo '</ul>';

// 重置全局文章数据

wp_reset_postdata();

}

}

?>

代码解释:

  1. 获取当前文章分类:和方法一类似,获取当前文章所属分类的ID。
  2. 设置查询参数:使用`get_posts`函数按照指定参数查询同分类文章。
  3. 循环输出文章列表:利用`foreach`循环输出符合条件的文章标题和链接。
  4. 重置全局文章数据:使用`wp_reset_postdata()`函数重置全局文章数据,避免对后续文章显示造成影响。

通过以上的方法,你可以把相关代码添加到`single.php`文件合适的位置,保存文件后,在文章页就能看到同分类文章列表了。

当然,其实要想在wordpress文章页调用同分类下的文章,用列表方式显示,还有更多其它方法,而以上提供的只是其中两种比较常见的用以表达其原理和如何调用。

同时,如果想要前台显示美观,我们还需要根据模板结构进行一定的css美化,具体如何美化,需要根据自身使用的模板结构来进行。

发表回复

要发表评论,您必须先登录