仅使用GET_THE_CATEGORY(按ID或插件)显示1个类别

时间:2013-02-26 作者:user27104

在几个小时毫无成果的google搜索之后,我请求您在这个问题上提供帮助。

我的目标是,如果类别ID与get\\u the\\u category函数中设置的ID或slug匹配,则仅显示一个带有get\\u the\\u category的类别。基本上,我要求的是这样的东西:假设有一个标题为“重要”的类别。我想排除分配给该职位的所有其他类别,并且仅在该职位属于该类别时显示“重要”。如果帖子不重要,则不应显示任何内容。这应该太难了,但我能想出来。

这是我找到的最接近这一点的东西,但它只显示帖子的第一个类别,没有按ID或slug手动选择的选项:

<?php 
$category = get_the_category(); 
if($category[0]){
echo \'<a href="\'.get_category_link($category[0]->term_id ).\'">\'.$category[0]->cat_name.\'</a>\';
}
?>
感谢您的贡献。

1 个回复
最合适的回答,由SO网友:Michelle 整理而成

我想你可以这样做:

$categories = get_the_category();
$displayed_category_id = 1; // set this to the category ID you want to show
$output = \'\';
if($categories){
    foreach($categories as $category) {
            if ( $displayed_category_id == $category->term_id) {
                  $output .= \'<a href="\'.get_category_link($category->term_id ).\'" title="\' . esc_attr( sprintf( __( "View all posts in %s" ), $category->name ) ) . \'">\'.$category->cat_name.\'</a>\';
           }
    }
echo $output;
}
它可能不是最有效的代码(而且未经测试),但它应该可以工作。。。?

如果ID不是您想要使用的键,那么您可以很容易地交换slug或category名称。祝你好运!

结束

相关推荐

将自定义ID插入wp_Get_Attach_link

我正在研究WordPress的这个功能。function wp_get_attachment_link( $id = 0, $size = \'thumbnail\', $permalink = false, $icon = false, $text = false ) { $id = intval( $id ); $_post = get_post( $id ); if ( empty( $_post ) || ( \'attachment\'