我想做的是在single.php
中,分别拉出类别的不同属性,如下所示:
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>
<a class="CATEGORYSLUG" href="CATEGORYLINK">
<i class="fas CATEGORYDESCRIPTION"></i>
<span>CATEGORYNAME</span>
</a>
<?php endwhile; ?>
<?php endif; ?>
要生产这样的最终产品:
以便我可以使用:
(对于该项目,每个帖子将只分配一个类别,但是我想一个面向未来的解决方案将需要以这种格式输出分配给该帖子的所有类别。)
所以我真的只需要知道如何单独拉动:
答案 0 :(得分:0)
您可以使用以下代码获取此信息。
$postcat = get_the_category( $post->ID );
它返回您要获取更多信息的所有字段,请参考此https://developer.wordpress.org/reference/functions/get_the_category/
答案 1 :(得分:0)
您可以使用get_the_terms()
函数获取分配给该发布对象的所有类别,并循环浏览每个类别以创建图标等。
下面是一个示例,我已经调用了每个单独的变量,以便您可以清楚地看到对象属性。
如果您只分配了一个类别,这也将起作用。
//get all categories:
$categories = get_the_terms(get_the_ID(), 'category');
//loop through categories
foreach ($categories as $category) {
//get variables
$slug = $category->slug;
$link = get_term_link($category->term_id);
$descr = $category->description;
$name = $category->name;
//echo your content
echo '<a class="'.$slug.'" href="'.$link.'"><i class="fas '.$descr.'"></i><span>'.$name.'</span></a>';
}