WordPress分类列表函数:wp_list_categories用法及参数详解举例
http://www.511yj.com/wordpress-wp-categories.html
?
注意:
1、 wp_list_categories() 和 list_cats() 以及 wp_list_cats() 的使用類似,但是后面 2 個(gè)已經(jīng)棄用。
2、如果你希望不格式化輸出分類,請(qǐng)使用 get_categories()
3、因?yàn)?WordPress 中內(nèi)置擴(kuò)展的小工具功能,所以我們不經(jīng)任何函數(shù)就可以在邊欄或是其他我們想要的位置顯示一個(gè)分類列表,所以wp_list_categories函數(shù)就很少有人用到。
4、該函數(shù)使用起來(lái)有點(diǎn)類似于wp_list_bookmarks()
5、該函數(shù)輸出 應(yīng)當(dāng)包含在 ul 標(biāo)簽內(nèi)
使用方法
wp_list_categories( string|array $args = '' )默認(rèn)用法
<?phpwp_list_categories( $args ); $args = array('show_option_all' => '',//是否列出分類鏈接'orderby' => 'name',//按名稱排列'order' => 'ASC',//升、降序'style' => 'list',//是否用列表(ul>li)'show_count' => 0,//是否顯示文章數(shù)量'hide_empty' => 1,//是否顯示無(wú)日志分類'use_desc_for_title' => 1,//是否顯示分類描述'child_of' => 0,//是否限制子分類'feed' => '',//是否顯示rss'feed_type' => '',//rss類型'feed_image' => '',//是否顯示rss圖片'exclude' => '',//排除分類的ID,多個(gè)用',(英文逗號(hào))'分隔'exclude_tree' => '',//排除分類樹,即父分類及其下的子分類'include' => '',//包括的分類'hierarchical' => true,//是否將子、父分類分級(jí)'title_li' => __( 'Categories' ),//列表標(biāo)題的名稱'show_option_none' => __('No categories'),//無(wú)分類時(shí)顯示的標(biāo)題'number' => null,//顯示分類的數(shù)量'echo' => 1,//是否顯示,顯示或者返回字符串'depth' => 0,//層級(jí)限制'current_category' => 0,//添加一個(gè)沒有的分類'pad_counts' => 0,//這個(gè)我也不明白'taxonomy' => 'category',//使用的分類法'walker' => null//用于顯示的類 ?>?
用法舉例
1、包含或排除某分類:
意思就是把分類ID為3,5,9,16的分類按名稱順序來(lái)排序:
?
或者
<ul><?php wp_list_categories( array('orderby' => 'name','include' => array( 3, 5, 9, 16 )) ); ?> </ul>?
2、按名稱排列,并顯示每個(gè)分類的日志總數(shù),并不顯示ID為10的分類:
<?php wp_list_categories('orderby=name&show_count=1&exclude=10'); ?>?
或者
<ul><?php wp_list_categories( array('orderby' => 'name','show_count' => true,'exclude' => array( 10 )) ); ?> </ul>?
3、顯示或隱藏列表標(biāo)題:
過(guò)濾ID為4和7的分類,并且列表標(biāo)題設(shè)置為“511遇見”:
?
4、列表中只顯示ID為5、9、23的分類,并把列表標(biāo)題改為 Poetry (下面的格式是為了把“要顯示的數(shù)據(jù)”和“標(biāo)簽參數(shù)區(qū)分開來(lái)”)
<?php wp_list_categories('include=5,9,23&title_li=<h2>' . __('Poetry') . '</h2>' ); ?>或者
<ul><?php wp_list_categories( array('include' => array( 5, 9, 23 ),'title_li' => '<h2>' . __( 'Poetry', 'textdomain' ) . '</h2>') ); ?> </ul>?
title_li參數(shù)設(shè)置或隱藏一個(gè)標(biāo)題或標(biāo)題wp_list_categories生成的類別列表。它默認(rèn)為”(__(類別)”,即它顯示這個(gè)詞“類別”列表的標(biāo)題。如果這個(gè)參數(shù)設(shè)置為null或空值,不顯示標(biāo)題。下面的示例代碼不包括類別id 4和7和隱藏列表標(biāo)題:
<ul><?php wp_list_categories( array('exclude' => array( 4,7 ),'title_li' => '') ); ?> </ul>?
5、只顯示指定分類的子分類
顯示ID為 8 的分類的子分類,根據(jù)ID排序,顯示文章數(shù),并且將分類描述作為連接的 title屬性。注意:如果父分類沒有文章,將不顯示父分類。
<ul> <?php wp_list_categories('orderby=id&show_count=1&use_desc_for_title=0&child_of=8'); ?> </ul>?
或者:
?
6、移除分類計(jì)數(shù)的括號(hào)
當(dāng) show_count=1 ,每個(gè)分類的后面都將顯示文章數(shù),同時(shí)使用括號(hào)包含。如果你要移除括號(hào),可以使用下面的代碼
?
7、顯示分類和 RSS Feed 連接
根據(jù)分類名稱進(jìn)行排序,顯示文章數(shù)量,并且顯示每個(gè)分類的 RSS 訂閱鏈接:
?
使用Feed 圖標(biāo)替換文本,可以使用下面的代碼:
<ul><?php wp_list_categories( array('orderby' => 'name','show_count' => true,'feed_image' => '/images/rss.gif') ); ?> </ul>?
顯示自定義分類法的項(xiàng)目:
在3.0版本添加了taxonomy 參數(shù)到? wp_list_categories() 。讓你可以通過(guò) taxonomy 參數(shù)來(lái)設(shè)置要顯示的是哪種分類法下的分類項(xiàng)目。比如要顯示分類法為 genre 的分類列表:
// List terms in a given taxonomy using wp_list_categories (also useful as a widget if using a PHP Code plugin)$taxonomy = 'genre'; $orderby = 'name'; $show_count = false; $pad_counts = false; $hierarchical = true; $title = '';$args = array('taxonomy' => $taxonomy,'orderby' => $orderby,'show_count' => $show_count,'pad_counts' => $pad_counts,'hierarchical' => $hierarchical,'title_li' => $title ); ?> <ul><?php wp_list_categories( $args ); ?> </ul>?
顯示文章對(duì)應(yīng)的分類:
根據(jù)父-子關(guān)系來(lái)排序文章的分類。類似于 get_the_category_list() 函數(shù)(根據(jù)名稱排序分類)。這個(gè)例子必須使用內(nèi)循環(huán)。
$taxonomy = 'category';// Get the term IDs assigned to post. $post_terms = wp_get_object_terms( $post->ID, $taxonomy, array( 'fields' => 'ids' ) );// Separator between links. $separator = ', ';if ( ! empty( $post_terms ) && ! is_wp_error( $post_terms ) ) {$term_ids = implode( ',' , $post_terms );$terms = wp_list_categories( array('title_li' => '','style' => 'none','echo' => false,'taxonomy' => $taxonomy,'include' => $term_ids) );$terms = rtrim( trim( str_replace( '<br />', $separator, $terms ) ), $separator );// Display post categories.echo $terms; }?
標(biāo)記和樣式化分類列表
默認(rèn)情況下, wp_list_categories() 生成的是無(wú)序列表(ul),使用 li 標(biāo)簽來(lái)包含每個(gè)分類,而且列表的標(biāo)題為"Categories"。
你可以通過(guò)設(shè)置 title_li 為空值來(lái)隱藏標(biāo)題。你可以自定義包裝 有序列表或無(wú)序列表。如果你不需要以列表輸出分類,可以將 style 參數(shù)設(shè)置為 none。
你可以根據(jù)下面的CSS選擇器來(lái)樣式化輸出:
li.categories { ... } /* outermost list item */ li.cat-item { ... } li.cat-item-7 { ... } /* category ID #7, etc */ li.current-cat { ... } li.current-cat-parent { ... } ul.children { ... }?
小結(jié)
1、官方文檔:https://developer.wordpress.org/reference/functions/wp_list_categories/
2、因?yàn)槲覀儧]有必要再使用這個(gè)函數(shù),最讓我們心動(dòng)的就是最后這個(gè)CSS的改變,這樣可以讓你更靈活的顯示在前臺(tái),比如有人問,如何去掉函數(shù)中封裝的 li 標(biāo)簽,這樣問的原因我猜主要是它的布局不是采用了 li 標(biāo)簽,或者一些樣式加布進(jìn)去,所以你多多研究一下總后一個(gè)例子還是很有必要的。
3、如何去掉li
<?php wp_list_categories('style=none'); ?>?
轉(zhuǎn)載于:https://www.cnblogs.com/cblx/p/8033080.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的WordPress分类列表函数:wp_list_categories用法及参数详解举例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 96核心192线程谁敢一战!AMD Ze
- 下一篇: nodejs开发——require与ex