Echo Category Nicename

时间:2012-09-08 作者:FightFan

我正在尝试回显类别nicename,以引用存储在另一个名为categories的文件夹中的“我的图像”文件夹中的类别图像。

我正在使用此代码:

$category = get_the_category();
echo \'<img src="\'.get_bloginfo(\'template_directory\').\'/images/categories/\'.$category->category_nicename.\'.png">\';
但它的回报是:

<img src="http://www.fightfansradio.com/wp-content/themes/FFR2/images/categories/.png">
我想要的是:

<img src="http://www.fightfansradio.com/wp-content/themes/FFR2/images/categories/categorynicename.png">
我还不能找出我的代码有什么问题。我能得到一些帮助吗?谢谢

3 个回复
SO网友:Neerav

*获取\\u类别();*旨在返回多个类别。您必须提供索引,以决定要回显哪些类别的昵称。

就像下面这样,

$category = get_the_category();
echo \'<img src="\'.get_bloginfo(\'template_directory\').\'/images/categories/\'.$category[0]->category_nicename.\'.png">\';

SO网友:Milo

有关详细信息,请参阅codex条目get_the_category:

返回对象的数组,每个类别分配给帖子一个对象。

由于可以为一篇文章指定多个类别,因此该函数将返回一个对象数组。必须引用数组的第一个元素才能获得第一个类别nicename:

$category = get_the_category();
echo $category[0]->category_nicename;

SO网友:Carl Rannaberg

get_the_category() 函数获取所有类别。

您应该使用以下选项:

// Execute only if on category page
if (is_category()) {
  //get category ID from current page URL
  $cat_id = get_query_var(\'cat\');
  //get category object with your current category ID
  $category = get_category ($cat_id);
  // echo category nicename from that category object
  echo \'<img src="\'.get_bloginfo(\'template_directory\').\'/images/categories/\'.$category->category_nicename.\'.png">\';
 }
干杯。

结束