WordPress 免插件显示标签云

评论(13)

因为 WordPress 拥有丰富的插件可供选择,所以很多朋友为了达到某项功能首先会想到的可能就是插件了,可能有的朋友会顾虑插件的增多会影响主机性能,降低博客的响应速度,一开始我也有这这样的顾虑,其实现在看来用插件实现一些功能不会给你的 WordPress 带来太多的负担,比如说今天要讲的标签云的显示。

使用插件的好处

  1. 不懂代码也可以操作自如。
  2. 一些经典的插件,功能其实蛮不错的。
  3. 懒人和不爱折腾的博主更偏爱插件。
  4. WordPress API 有调整的话,插件作者一般都会更新,不影响使用

说了那么多,那为什么我不用插件去实现标签显示功能呢?
因为用插件不够折腾,而且我只是想显示几个标签,也就两行代码搞定,用一个插件是不是太奢侈了?
好了,哥的题也跑够了,下面进入正题:

显示标签云的函数wp_tag_cloud

wp_tag_cloud 是 WordPress 内置函数
参数说明:

  1. smallest:使用次数最少的标签的字号大小(单位由unit参数决定),默认值为8
  2. largest:使用次数最多的标签的字号大小(单位由unit参数决定),默认值为22
  3. unit:(字符串)对smallest与largest的值的测量单位。可以是任何CSS长度单位,如pt, px, em, %。默认值为’pt’
  4. number:显示标签数量。(值为’0′时显示所有标签),默认值为45
  5. format:(字符串)所显示的云的格式。’flat’ (默认值)标签被“separator”参数所定义的空格分隔;’list’ 标签与class=’wp-tag-cloud’ 共同在UL中;’array’ 标签在数组中,函数以数组方式返回标签云,以用在PHP中。(数组被返回,而非显示,引入于WordPress 2.5)
  6. separator:(字符串)标签之间的文本/空格。(引入于WordPress 2.9)。默认值:’/n’ (空格)
  7. orderby:(字符串)标签的排列顺序的方式。’name’ (默认值,按名称排列),’count’ (按使用次数排列)
  8. order:(字符串)排列顺序(升序或降序)。
    ‘ASC’ ——默认值;
    ‘DESC’;
    ‘RAND’ 随机排列。(引入于WordPress 2.5)
  9. exclude:(字符串)不显示的标签(term_id)的ID,各ID用逗号隔开。如 ‘exclude=1,2′表示不显示id为1和2的标签。默认全显示。
  10. include:(字符串)选择要显示的标签(term_id)列表,各ID用逗号隔开。例如, ‘include=3,4′ 表示只显示id为3和4的标签。默认全显示。
  11. link:(字符串)设置链接,允许编辑某个指定标签。(该标签引入于WordPress 2.7)。
    ‘view’ (默认值)
    ‘edit’
  12. taxonomy:(字符串)用以生成云的分类法。(引入于WordPress2.8)。
    ‘post_tag’ —— (默认值)将文章标签当作云的来源
    ‘category’ —— 用文章分类生成云
    ‘link_category’ —— 用链接分类目录生成云
  13. echo:(布尔型)显示结果,或将结果保留在变量中。默认值为true(显示标签云)。(该标签引入于WordPress2.8)
    1 (true) —— 默认值
    0 (false)

使用方法 1:

<?php 
//你可以这样用。 $args 为默认值。
//注:这样用适合使用参数多的时候。
wp_tag_cloud( $args );
 $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 ); 
 
?>

使用方法 2:

<?php
//当然你也可以这样用
//需要设置几个参数就设置几个,其他的WP会自动调用默认值。
wp_tag_cloud('smallest=8&largest=14&number=12&order=RAND');
?>

边栏显示 – 我这么用

 
<div id="tag_cloud" class="widget">
<!--当做一个 widget 放在边栏 需要根据主题边栏结构自行调整-->
 
<h3>文章标签</h3>
 
<?php wp_tag_cloud('smallest=8&largest=14&number=12&order=RAND'); ?>
 
<div class="action">
 
<a class="view-more" href="<?php bloginfo(url);?>/all-tags/">View All Tags »</a>
<!-- 给一个 所有标签的页面链接 -->
 
</div>
</div>

PS:这样写不知道 WIND 兄满意否?





转载请注明转自: WordPress 免插件显示标签云

  1. 收藏了,这篇文章把标签云函数介绍的非常清楚,让我这个小白也学会了使用,避免了看英文的函数说明。

  2. @XiangZi
    博主,我的标签依然是按列显示,怎么改成云显示呢?实在搞不懂额,帮帮俺!

  3. Pingback: wp_list_categories|函数-WordPress

  4. @toptpe
    让每个标签左浮动(float:left)

  5. 请教大侠,我的标签云怎么显示的是一列的,我看的是都连起来的,有的可以显示指定的数列,我的标签云

  6. @zwwooooo
    但是个性化效果却不足,比如说判断当前页面是否显示,
    链接到 All Tag 页面便于 SEO 等等等等。

  7. 这很常用了,而且小工具就有,无需插件。

  8. @wind
    加一个判断,很简单,稍后会写到。

  9. xiang兄,你的View All Tags 标签的页面链接是如何隐藏的呢?

  10. @XiangZi
    OK,其实wordpress不是很难的,我经常去themeforest去看看有关WP的主题,老外做的主题就是强大啊。

  11. @wind
    本来就想写的,
    还有一些其他函数的简单介绍和用法。
    Wind兄需要,当然先写这个了。
    国人都说 WordPress 难,其实不然,
    强大的东西都不难,
    跟其他博客程序相比 WordPress 就很强大,
    难就难在 WordPress 中文资料太少。

  12. 满意,必须的。呵呵

  13. xiang兄,真是神速啊。我吃饭的过程中看电脑的时候,就发现了。