2

我创建了一个名为“tema”的自定义分类法,该分类法包含三个术语。我想显示与当前帖子相关的所有术语链接。目前我只能让我的代码显示一个帖子分类术语......

我希望通过我的自定义 content.php 文件(“content-home.php”)显示术语链接,该文件用于在我的主页上显示我的自定义帖子的摘录。

目前我将此代码放在我的自定义 content.php 文件中,它实际上工作正常,但我只能让它显示一个术语:

<?php

    $terms = get_the_terms( $post->ID, 'tema');

    foreach($terms as $term) {
           echo '<a href="' . get_term_link($term) . '"><span>' . $term->name . '</span></a>';
    }
?>

谁能告诉我如何让它显示所有帖子分类术语链接?

4

2 回答 2

0

尝试使用下面的钩子函数来获取特定帖子 ID 的分类列表,

//Returns All Term Items for "my_taxonomy"
$term_list = wp_get_post_terms($post->ID, 'my_taxonomy', array("fields" => "all"));
print_r($term_list);

*my_taxonomy - 替换你的分类

https://codex.wordpress.org/Function_Reference/wp_get_post_terms

于 2017-08-03T12:09:06.973 回答
0

在 WordPress Codex 中,您可以找到:

对于 get_the_terms:“检索附加到帖子的分类术语。” http://codex.wordpress.org/Function_Reference/get_the_terms

对于 get_terms:“检索分类或分类列表中的术语。” http://codex.wordpress.org/Function_Reference/get_terms

因此,get_the_terms()将获取附加到帖子的术语(例如类别),而get_terms()将检索分类中的术语(例如类别分类中的类别)。例如,get_terms( 'category' )将返回您添加到 WordPress 网站的所有类别。

你应该使用这样的东西:

<?php                   
  $terms= get_terms(array('taxonomy'=>'tema'));
  foreach($terms as $term){
      echo '<a href="' . get_term_link($term) . '"><span>' . $term->name . '</span></a>';
  }
?>
于 2017-08-03T08:49:08.180 回答