wordpress如何获取当前文章分类数据

2024年1 月21日 / 网站源码 / 没有评论 / 7,316次

wordpress通过get_the_category函数获取当前文章分类数据,get_the_category()返回当前文章所属分类的数组集合。

用法:<?php get_the_category( $id ) ?>

参数:$id  文章id,默认是当前文章ID,类型为整数,可选

返回的值:数组

用法一、如果需要使用返回的分类目录下的某个值,需要指定数组索引。可以这样理解,一篇文章可能属于多个分类目录,然后遍历返回结果可以获取每个分类的对象,再使用成员就即可获取想要的分类ID及分类名和其它内容。

  1. <?php
  2.     $category = get_the_category();   //默认获取当前分类ID
  3.     echo $category[0]->cat_name;    //使用$categories->cat_name不能获得正确值,应该$categories[0]->cat_name才能正确工作。
  4. ?>

用法二、在文章页循环当前文章所属分类,输出图片以分类ID命名,且alt属性设置为分类名称。

  1. <?php
  2.      foreach((get_the_category()) as $category) {
  3.      echo '<img src="http://example.com/images/'.$category->cat_ID.'.jpg" alt="'.$category->cat_name.'" />';
  4. }
  5. ?>

用法三、通过当前分类id显示当前分类的所有的文章标题。

  1. <?php
  2.     $cat=get_the_category();
  3.     $cat_id=$cat[0]->cat_ID;
  4.     query_posts('order=asc&cat='.$cat_id);
  5.     while (have_posts()):the_post();
  6. ?>
  7. <a href="<?php the_permalink();?>"><?php the_title();?></a>
  8. <?php  endwhile;wp_reset_query(); ?>

用法四、在文章页通过指定的文章ID获取此文章所属分类的相关信息。如分类名称,分类别名,分类描述,分类所包含的文章数。

  1. <?php
  2.     global $post;
  3.     $categories = get_the_category($post->ID);
  4.     echo $categories[0]->cat_name;
  5.     echo $categories[0]->category_nicename ;
  6.     echo $categories[0]->category_description ;
  7.     echo $categories[0]->category_count;
  8. ?>

返回值各项含义:

cat_ID:分类id

cat_name:分类名

category_nicename:一个slug,也就是系统根据分类名生成的url友好的名字

category_description:分类描述

category_parent:父分类id

category_count:该分类包含多少篇日志或者该分类被使用了多少次