国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > CMS > Wordpress > 正文

wordpress自定義標(biāo)簽云與隨機(jī)獲取標(biāo)簽的方法詳解

2024-09-07 00:40:19
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

今天小編就為大家分享一篇關(guān)于wordpress自定義標(biāo)簽云與隨機(jī)獲取標(biāo)簽的方法詳解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧。

wp_tag_cloud() 函數(shù)的作用是用來(lái)標(biāo)簽云的,可以根據(jù)每個(gè)標(biāo)簽所關(guān)聯(lián)的文章次數(shù)來(lái)定義字體大小、標(biāo)簽排序等屬性。從 2.8 版本開(kāi)始,添加了 分類(lèi)法(taxonomy)參數(shù),這就意味著,除了 標(biāo)簽(tags)以外,還可以將 分類(lèi)(Categories) 或其他 自定義分類(lèi)法(Custom Taxonomies)作為“云”顯示。

用法:

<?php wp_tag_cloud( $args ); ?>

默認(rèn)用法:

<?php $args = array( 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45, 'format' => 'flat', 'separator' => "/n", 'orderby' => 'name', 'order' => 'ASC', 'exclude' => null, 'include' => null, 'topic_count_text_callback' => default_topic_count_text, 'link' => 'view', 'taxonomy' => 'post_tag', 'echo' => true, 'child_of' => null(see Note!) ); ?>

注: child_of 不是一個(gè)直接的 wp_tag_cloud 數(shù)組的鍵(Key),但由于這個(gè)函數(shù)使用 wp_parse_args() 和 get_terms() ,你可以通過(guò) get_terms() 使用所有的數(shù)組鍵。

默認(rèn)情況下的輸出內(nèi)容:

smallest —— 最小的標(biāo)簽(使用次數(shù)最少)顯示大小為8

largest ——最大的標(biāo)簽(使用次數(shù)最多)顯示大小為22

unit —— 最大值最小值的單位為'pt'

number —— 至多顯示45個(gè)標(biāo)簽

format —— 以平面形式顯示所有標(biāo)簽(標(biāo)簽之間用空格隔開(kāi))

separator —— 顯示標(biāo)簽之間的空格

orderby —— 按名稱(chēng)為標(biāo)簽排序

order —— 以升序排列

exclude —— 不排除任何標(biāo)簽

include —— 包括所有標(biāo)簽

topic_count_text_callback —— 使用函數(shù) default_topic_count_text

link —— 可視

taxonomy —— 用文章的標(biāo)簽作為云基礎(chǔ)

echo —— 輸出結(jié)果

但由于該方法把樣式集合到了里面,使用起來(lái)不怎么友好,如果想自定義讀取標(biāo)簽并修改展示樣式該怎么做呢,那也是非常簡(jiǎn)單的,看代碼實(shí)例,這里根據(jù)get_tags來(lái)獲取:

  1. $html = '<ul class="post_tags">'
  2. foreach (get_tags( array('number' => 50, 'orderby' => 'count''order' => 'DESC''hide_empty' => false) ) as $tag){ 
  3.  $color = dechex(rand(0,16777215)); 
  4.  $tag_link = get_tag_link($tag->term_id); 
  5.  $html .= "<li><a href='{$tag_link}' title='{$tag->name} Tag' class='{$tag->slug}' style='color:#{$color}'>"
  6.  $html .= "{$tag->name} ({$tag->count})</a></li>"
  7. $html .= '</ul>'
  8. echo $html

如果要求隨機(jī)獲取標(biāo)簽在首頁(yè)顯示,那可以使用以下代碼,但這種做法貌似不利于seo,可得慎重使用。

  1. //獲取隨機(jī)標(biāo)簽 
  2. function get_rand_tags() 
  3.  global $post$wpdb
  4.  $sql = "SELECT * FROM {$wpdb->prefix}terms wt INNER JOIN {$wpdb->prefix}term_taxonomy wtt on wt.term_id=wtt.term_id where wtt.taxonomy='post_tag' ORDER BY RAND() LIMIT 20"
  5.  $related_posts = $wpdb->get_results($sql); 
  6.  $html = '<ul class="post_tags">'
  7.  foreach($related_posts as $tag
  8.  { 
  9.  $color = dechex(rand(0,16777215)); 
  10.  $tag_link = get_tag_link($tag->term_id); 
  11.  $html .= "<li><a href='{$tag_link}' target='_blank' title='{$tag->name} Tag' class='{$tag->slug}' style='color:#{$color}'>"
  12.  $html .= "{$tag->name} ({$tag->count})</a></li>"
  13.  } 
  14.  $html .= '</ul>'
  15.  echo $html

獲取隨機(jī)標(biāo)簽用get_tags函數(shù)怎么變化參數(shù)都是沒(méi)法獲取到的(反正我是獲取不到,歡迎大神留言指導(dǎo)),結(jié)果最后就用的sql連接表查詢(xún)就搞出來(lái)了。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 马鞍山市| 峡江县| 云林县| 乌拉特前旗| 溧阳市| 济宁市| 泽库县| 洱源县| 城口县| 牡丹江市| 和林格尔县| 原阳县| 呼伦贝尔市| 黄平县| 融水| 铁岭市| 广州市| 崇文区| 集贤县| 海安县| 河间市| 南宫市| 印江| 镇远县| 荔浦县| 淮安市| 泸水县| 翁牛特旗| 临江市| 宁武县| 开远市| 木兰县| 沐川县| 吉林市| 都昌县| 荔波县| 南郑县| 华池县| 巴青县| 资兴市| 台山市|