• 注册
  • 个人说明:TA有点懒了,什么都没有写。
    关注 1 粉丝 0 喜欢 0 内容 256
    河南省·郑州市
    聊天 送礼

    新版界面开发进度

    14%
    其实就是啥也没写,只有想法,哈哈
    • 回帖总排行
    • 采纳总排行

    分享精彩给好友

    全部文章 关注:0 内容:1074

    wordpress函数get_the_category获取分类信息详解【转】

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • WordPress获取分类信息get_the_category这个WordPress函数平时用得比较少,一般也很少用到它,get_the_category函数的功能是获取与查询参数相关的数据,利用这个性质,我们可以制作一些文章相关项,增加内链,提高SEO优化效果。

      函数原型

      get_the_category函数位于wp-includes/category-template.php文件中。

      function get_the_category( $id = false ) {
          $categories = get_the_terms( $id, 'category' );
          if ( ! $categories || is_wp_error( $categories ) )
              $categories = array();
       
          $categories = array_values( $categories );
       
          foreach ( array_keys( $categories ) as $key ) {
              _make_cat_compat( $categories[$key] );
          }
       
          /**
           * Filters the array of categories to return for a post.
           *
           * @since 3.1.0
           * @since 4.4.0 Added `$id` parameter.
           *
           * @param array $categories An array of categories to return for the post.
           * @param int   $id         ID of the post.
           */
          return apply_filters( 'get_the_categories', $categories, $id );
      }

      可以看到get_the_category函数与get_the_terms函数相关,至于get_the_terms函数的用法,这里就不多讲了,太偏僻,我很少用,需要的可以自行查看WordPress开发手册。

      参数

      get_the_category( int $id = false )

      $post->ID (当前文章的编号)

      注意,这个函数只能在WordPress主循环中使用!

      简单用法

      显示类别的图片

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

      显示第一个类别的名称

      <?php 
      $category = get_the_category(); 
      echo $category[0]->cat_name; 
      ?>

      显示第一个类别的连接

      <?php 
      $category = get_the_category(); 
      if($category[0]){ 
      echo '<a href="'.get_category_link($category[0]->term_id ).'">'.$category[0]->cat_name.'</a>'; 
      } ?>

      获取指定文章编号的类别信息

      <?php 
      global $post; 
      $categories = get_the_category($post->ID); 
      var_dump($categories); 
      ?>

      返回对象的成员

      cat_ID

      类别编号,存储在term_id字段

      cat_name

      类别名称,存储在name字段

      category_nicename

      别名,存储在slug字段

      category_description

      类别描述,存储在description字段

      category_parent

      父类别编号,没有父类的为0,存储在parent字段

      category_count

      类别使用的数量,存储在count字段

      你需要登录,才能进行发帖操作