WordPress通过当前文章页tag去获取相关的文章列表

在wordpress文章页当中如何通过当前的tag标签名称去获取相关的文章列表呢,查询了很多方案,但都不是我想要的结果。

最终的方案如下:

<?php
// 获取当前文章的ID
$current_post_id = get_the_ID();
// 获取当前文章的标签
$current_post_tags = wp_get_post_tags($current_post_id);
// 提取标签的ID
$tag_ids = array();
foreach ($current_post_tags as $tag) {
$tag_ids[] = $tag->term_id;
}
// 构建查询参数
$args = array(
'tag__in' => $tag_ids,
'post__not_in' => array($current_post_id),
'posts_per_page' => 5, // 相关文章的数量
);
// 执行查询
$query = new WP_Query($args);
// 循环输出相关文章
if ($query->have_posts()) {
echo '<ul>';
while ($query->have_posts()) {
$query->the_post();
echo '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
}
echo '</ul>';
}
// 重置查询
wp_reset_postdata();
?>

这段代码首先获取当前文章的ID,然后获取当前文章的标签。接下来,它提取标签的ID,并使用这些ID构建了查询参数。你可以根据需要自定义查询参数,比如设置相关文章的数量。然后,它使用WP_Query执行查询,并通过循环输出相关文章的标题和链接。

请将以上代码插入到你的WordPress主题文件中,比如single.php,以便在单篇文章页面中显示相关文章列表。记得根据你的需求进行适当的样式和布局调整。

未经允许不得转载:泥人传说 » WordPress通过当前文章页tag去获取相关的文章列表
分享到:
赞(0)

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址