WordPress中循环内的类别Nicename

时间:2014-08-09 作者:Hujjat Khan

如何在主循环中回显当前帖子的类别nicename。

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

 echo <div class="btn category-nicename"> 

 <?php endwhile; else : ?>
    <p><?php _e( \'Sorry, no posts matched your criteria.\' ); ?></p>
<?php endif; ?>
我想将div标记中的类别nicename作为类进行回显,然后以css为目标

有什么建议吗?

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

您可以使用get_the_category 在循环内获取帖子分配给的类别。要获取可用成员变量的列表,请参见get_categories.

我建议只针对第一个类别,如果该职位只分配给一位家长和家长的一些子类别,那么这也是家长类别。下面是一个示例,可以将第一个类别分配给帖子的nicename

$category = get_the_category(); 
$post_cat = $category[0]->category_nicename;
您现在可以使用$post_cat 作为你的班级。请记住在此行之前添加此代码

echo <div class="btn category-nicename"> 
这里只是一句忠告,不要滥用echo. 必要时使用php标记,以避免不必要地使用echo. 顺便说一句,你的语法错了

echo <div class="btn category-nicename">
应该是

echo \'<div class="btn category-nicename">\';
如果您要使用echo

EDIT

从上面的评论^^,您需要获得当前类别的好名称。您可以使用get_query_var( \'cat\') 从中你可以得到一个好名字

$category = get_query_var( \'cat\' );
$post_cat = $category->category_nicename;
如上所述,只需使用$post_cat 在你的课堂上。我希望这能回答你的问题

结束

相关推荐

Categories in media library

我想在媒体库中添加一个相当大的声音集合。问题是,我无法在上传文件时将类别添加到一堆文件中。。。我甚至无法将其添加到一个上载文件。。。。我找不到解决这个问题的方法。将该类别添加到数千个声音文件中是一项艰巨的工作。是否可以在媒体库中添加标记字段或类别字段,并在上传媒体库页面中包含相应字段?answer中的插件不允许在上载时设置类别。。。也许是时候为用户添加更多功能来使用wordpress中的媒体库了?