在我们开发一款WordPress主题中,经常会调用到tag标签的数据,而wp_tag_cloud()函数的作用是用来获取标签云的,该函数可以根据每个标签所关联的文章次数来定义字体大小、标签排序等属性。
从WordPress2.8版本开始,该函数添加了 分类法(taxonomy)参数,这就意味着,除了 标签(tags)以外,还可以将 分类(Categories) 或其他 自定义分类法(Custom Taxonomies)作为“云”显示。
但由于该方法把样式集合到了里面,使用起来不怎么友好,如果想自定义读取标签并修改展示样式该怎么做呢,那也是非常简单的,看代码实例,这里根据get_tags来获取:
$html = \'<ul >\';foreach (get_tags( array(\'number\' => 50, \'orderby\' => \'count\', \'order\' => \'DESC\', \'hide_empty\' => false) ) as $tag){$color = dechex(rand(0,16777215));$tag_link = get_tag_link($tag->term_id); $html .= \"<li><a href=\'{$tag_link}\' title=\'{$tag->name} Tag\' class=\'{$tag->slug}\' style=\'color:#{$color}\'>\";$html .= \"{$tag->name} ({$tag->count})</a></li>\";}$html .= \'</ul>\';echo $html;
如果要求随机获取标签在首页显示,那可以使用以下代码,但这种做法貌似不利于seo,可得慎重使用
//获取随机标签function get_rand_tags(){global $post, $wpdb;$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\";$related_posts = $wpdb->get_results($sql);$html = \'<ul >\';foreach($related_posts as $tag){$color = dechex(rand(0,16777215));$tag_link = get_tag_link($tag->term_id);$html .= \"<li><a href=\'{$tag_link}\' target=\'_blank\' title=\'{$tag->name} Tag\' class=\'{$tag->slug}\' style=\'color:#{$color}\'>\";$html .= \"{$tag->name} ({$tag->count})</a></li>\"; }$html .= \'</ul>\';echo $html;}
以上便是使用 wp_tag_cloud()函数来自定义WordPress的tags标签样式的相关WordPress教程,希望对您有帮助!
扫码关注wp主题君
精选优质免费WordPress主题模板,分享最新WordPress实用建站教程!
记住我们的网址:ztJun.com