要获取WordPress中当前分类下所有文章的所有标签聚合,您可以使用以下代码示例:
<?php
// 获取当前分类的ID
$category_id = get_queried_object_id();
// 获取当前分类下的所有文章
$args = array(
'cat' => $category_id,
'posts_per_page' => 1,
);
$posts = new WP_Query($args);
// 创建一个空数组来存储所有标签
$all_tags = array();
// 循环遍历每篇文章
if ($posts>have_posts()) {
while ($posts>have_posts()) {
$posts>the_post();
// 获取当前文章的标签
$post_tags = get_the_tags();
// 将当前文章的标签添加到$all_tags数组中
if ($post_tags) {
foreach ($post_tags as $tag) {
$all_tags[] = $tag;
}
}
}
}
// 使用array_unique函数去重
$unique_tags = array_unique($all_tags);
// 循环遍历所有标签并显示它们
if (!empty($unique_tags)) {
echo '<ul>';
foreach ($unique_tags as $tag) {
echo '<li><a href="' . get_tag_link($tag) . '">' . $tag>name . '</a></li>';
}
echo '</ul>';
}
// 重置查询
wp_reset_query();
?>
这段代码首先获取了当前分类的ID,然后使用WP_Query
获取该分类下的所有文章。接下来,它循环遍历每篇文章,获取文章的标签,并将这些标签存储在一个数组中。然后,它使用array_unique
函数去重,以确保每个标签只显示一次。最后,它循环遍历所有标签并显示它们的链接。
请将这段代码添加到您的WordPress主题模板文件中,以在当前分类页面上显示所有标签的聚合。记得备份您的文件,并根据需要进行自定义。