wordpress獲取分類目錄一些實例詳解

在WordPress中爲咱們提供了很多的分類目錄獲取函數,下面小編來給你們總結一下分類目錄獲取函數實例.php

1.如何根據分類名稱獲取分類ID?css

要實現根據分類名稱獲取分類ID就必需要用到這個函數:get_cat_ID()ide

這個函數的用法以下:<?php get_cat_ID( $cat_name ) ?> wordpress

下面咱們來這個函數來進行一下簡單的介紹,首先是這個函數的參數:$cat_name,分類名稱默認值爲"General"  其類型爲字符型,可選,函數返回的值,出錯時返回0,成功則返回分類ID號,類型爲整數.函數

好了,下面咱們來看一下示例:oop

  1. <?php           post

  2.         $category_id = get_cat_id('Category Name');           spa

  3.         query_posts('cat='.$category_id);           日誌

  4.         if (have_posts()) : while (have_posts()) : the_post();    blog

  5.         the_content();        

  6.         endwhileendif;      

  7. ?> 

2.如何根據分類ID獲取分類的連接URL?

要想實現這個功能,必需要用到這個函數:get_category_link(),這個函數的用法以下:

<?php get_category_link( $category_id ) ?> 

下面是有關這個函數的一些介紹和說明:參數:$categroy_id 分類ID號 默認值:None,類型爲整數,必需,返回的值,分類URL 字符串型

示例代碼以下:

  1. <?php    

  2.         $category_id = get_cat_ID( 'Category Name' );    

  3.         $category_link = get_category_link( $category_id );    

  4.     ?>    

  5.     <a href="<?php echo $category_link; ?>" title="Category Name">你的分類目錄名稱</a>  

3.顯示文章所屬分類目錄的連接

此功能的調用函數爲:the_category(),須要強調的是:必須在主循環LOOP中使用它!切記!

其用法以下:<?php the_category( $separator, $parents );?> 

對此函數進行一些必要說明:

參數:$separator 顯示在分類目錄連接之間的文字或字符,默認以無序列表方式排列分類目錄連接.

字符串型

$parents 怎樣顯示子分類目錄連接,字符串型,值包括:

'multiple'——顯示父分類與其子分類的連接以展現"父子"關係

'single'——只顯示子分類的連接,用連接文本標出"父子"關係

默認值爲顯示子分類連接,無標識文字,接着,咱們將舉兩個例子對此函數的具體用法進行一些參照:

示例一:用逗號隔開分類目錄

列出分類目錄,(在分類目錄數量多於一個的狀況下)以逗號做爲分隔符.

代碼以下:<p>This post is in: <?php the_category(', '); ?></p> 

示例二:用箭頭隔開分類目錄

列出分類目錄,以箭頭(>)做爲分隔符,(使用時請注意,有些訪問者可能會將分類>分類這種格式解讀爲一對具備「父子」關係的分類.)

代碼以下:<p>Categories: <?php the_category(' &gt; '); ?></p>  

4.顯示或返回當前頁面的分類目錄標題

在這裏咱們須要用到函數:single_cat_title()

對那些顯示WordPress標籤而非分類目錄標題的頁面(如"/tag/carceer"),該標籤顯示或返回標籤名稱,該標籤只能用在WordPress主循環(loop)以外.

其基本用法以下:<?php single_cat_title( $prefix, $display ); ?> 

其默認用法以下:<?php single_cat_title('prefix'=>,'display'=> true ); ?> 

咱們對其參數進行一些必要的說明:

$prefix 輸出時在標題前的文本信息,默認值:None,類型是字符串,可選

$display 顯示標題(TRUE)或返回標題以便用在PHP中(FALSE)。默認值:TRUE,類型是布爾型 可選下面這個例子在分類目錄標題後顯示「當前分類:」字樣:

示例以下:

  1. <p><?php single_cat_title('當前分類目錄是'); ?></p> 

  2. //output:當前分類目錄是wordpress 

下面這個例子將當前分類目錄標題賦值給變量$current_category以用在PHP中.

示例代碼以下:<?php $current_category = single_cat_title("", false); ?> 

5.返回用戶在當前分類目錄所填寫的說明信息

在這裏,咱們須要用到函數:category_description()

此函數的基本用法以下:<?php echo category_description( $category ); ?> 

咱們對其參數進行一些說明:

參數:$category 被返回說明信息的分類目錄的數值型ID。若用戶未指定分類目錄,默認爲當前分類目錄,類型爲整型

示例代碼以下:

  1. <div><?php echo category_description(3); ?></div>    

  2.     //output:WordPress is a favorite blogging tool of mine and I share tips and tricks for 

  3. using WordPress here.    

  4.      <div><strong><?php single_cat_title('當前分類目錄'); ?>    

  5.     </strong>: <?php echo category_description(); ?></div>    

  6.     //output: 

  7. 當前分類目錄WordPress: WordPress is a favorite blogging tool of mine and I 

  8. share tips and tricks for using WordPress here.  

分類目錄函數wp_list_categories用法

做用:按條件獲取分類目錄並按參數格式化

用法:<?php wp_list_categories( $args ); ?>

默認代碼以下:

  1. $defaults = array

  2. ‘show_option_all’ => 」,// 不列出分類連接 

  3. ‘orderby’ => ‘name’,// 按照分類名排序 

  4. ‘order’ => ‘ASC’, //升序排列 

  5. ‘show_last_update’ => 0,// 不顯示分類中日誌的最新時間戳 

  6. ‘style’ => ‘list’,//列表顯示分類 

  7. ‘show_count’ => 0,// 不顯示分類日誌數量 

  8. ‘hide_empty’ => 1, //不顯示沒有日誌的分類 

  9. ‘use_desc_for_title’ => 1,// 顯示分類描述 

  10. ‘child_of’ => 0, //不限制子分類 

  11. ‘feed’ => 」, //不顯示feed 

  12. ‘feed_image’ => 」,// 不顯示feed圖片 

  13. ‘exclude’ => 」, //不顯示該分類 

  14. ‘hierarchical’ => true,// 分層次顯示父/子分類 

  15. ‘title_li’ => __(‘Categories’), //用「Categories」爲當前分類列表的標題 

  16. echo’ => 1, //顯示(echos) 分類 

  17. ‘depth’ => 0 //不限制列表深度 

  18. ); 

主題中最經常使用的實例(獲取全部分類目錄,並按名字排序,獲取深度爲3,標題格式化爲無,這個實例經常使用於下拉菜單中,須要相關css和js支持,若是沒有css,將會出現格式問題,如全部子目錄堆疊而不是下拉,可是功能沒問題.

實例代碼以下:

  1. <ul id=」nav」> 

  2. <li><a href=」<?php echo get_settings(‘home’); ?>/」 title=」<?php 

  3. bloginfo(‘description’); ?>」>Home</a></li> 

  4.                     <?php wp_list_categories(‘sort_column=name&title_li=&depth=3′); ?> 

  5. </ul> 

按照分類名排序,並只顯示 ID 爲一、二、3和4的分類,代碼以下:

wp_list_categories(‘orderby=name&include=1,2,3,4′); 

按照分類名排序,並顯示每一個分類的日誌數,但不顯示 ID 爲10的分類,代碼以下:

wp_list_categories(‘orderby=name&show_count=1&exclude=10′);

 

獲取當前分類的根分類id函數

第一種:若是是分類頁,系統默認有個變量$cat,就是當前分類的ID。這個比較準。

第二種:單個頁面適用

代碼以下:

$cat= single_cat_title('', false);

echo get_cat_ID($cat);

第三種,代碼以下:

  1. if (!is_page() && !is_home()){ $catsy = get_the_category(); $myCat = $catsy[0]->cat_ID; 

  2. $currentcategory = '&current_category='.$myCat; } wp_list_categories 

  3. ('hierarchical=1&use_desc_for_title=0&exclude=12&depth=1&orderby=id&title_li='.$currentcate 

  4. gory); 

獲取分類列表,不用SQL語句直接獲取乾淨的分類目錄,代碼以下:

  1. echo "<span><select name='list'>"

  2. foreach(get_all_category_ids() as $v

  3.     $cat_info=get_category($v); 

  4.     echo "<option value='".$v."'>".$cat_info->name."</option>"

  5. echo '</select></span>'

相關文章
相關標籤/搜索