You are here: Home » All Categories » » jQuery实现: 标签云显示每标签的文章数

jQuery实现: 标签云显示每标签的文章数

Dec 10th, 2011 16:32 | Leave a comment?(97) Go to comments

这是西门需要的功能,西门目前是通过修改WordPress源文件实现的,但他希望用WordPress函数的钩子来实现,不过今天下午我看了下标签云(标签列表)源代码,木有适合的钩子来改变输出数据(我看了源码后觉得是这样,或许有其它办法),函数只提供了2个钩子,一个是标签类别,一个是整个函数钩子……

不过,在讨论+测试过程中我发现标签云列表本身就有“鼠标悬停显示当前标签的文章数”,所以是可以用 jQuery 来解决的。于是我就用到我博客侧边栏的标签云了,效果如下图:(也可以点击侧边栏的“签”查看效果)

标签云显示每标签的文章数

标签云显示每标签的文章数

怎么样?很蛋疼吧……

下面是实现方法,当然显示效果不是和我一样,我只是提供简单 jQuery 代码,具体的样式自行写 css

  1. 假如你的标签云调用代码如下:
<div class="widget">
    <h3>标签云</h3>
    <div id="tag_cloud"><?php wp_tag_cloud('unit=px&smallest=12&largest=12&number=50'); ?></div>
</div>
  1. 然后是 jQuery 代码,当然前提是先挂 jQuery 库
jQuery(document).ready(function($){
    ////////TAG Cloud里面显示“每标签的文章数” by zwwooooo
    $('#tag_cloud a').each(function(){
        var num=$(this).attr('title').split(' ')[0]; //获取标签里面的title值
        var a=$(this).html()+' <span class="tag_num">('+num+')</span>'; //然后是标签的名插入此标签的文章数
        $(this).html(a); //最后是改变标签名
    });
})

文章数的样式可以通过 tag_num 这个class定义

好吧,很简单,是不?对,就是这么简单,高手忽略吧。

文囧,稍微记录一些碰到的、问到的问题及解决方法也可。

声明: 除非注明,ZWWoOoOo文章均为原创,转载请以链接形式标明本文地址
本文地址: http://zww.me/archives/25553

Related Posts

Most Popular

97 Comments.

⊕Leave a comment?
  1. suN suN Google Chrome 15.0.874.121Windows 7 x64 Edition

    围观技术博客!!!

    31楼
  2. CONEY CONEY Google Chrome 15.0.874.121Windows 7

    显得有点乱了,呵呵~

    32楼
  3. Mr. Lau Mr. Lau TheWorld BrowserWindows 7

    额。。一直都觉得标签云影响美观。。一堆一堆滴。。

    不过想考虑换一个形式。。

    33楼
  4. 晨光 晨光 Internet Explorer 8.0Windows XP

    这功能挺不错的

    34楼
  5. 河河 河河 Sogou ExplorerWindows 7

    又是一篇技术

    35楼
  6. 郑永 郑永 Firefox 8.0.1Windows XP

    这个貌似不错,呵呵,查询数据库的次数会不会多出来了?

    36楼
  7. 无冷 无冷 Google Chrome 13.0.782.220Windows 7

    过来抄袭你的tags页面来了 :mrgreen: :mrgreen:

    37楼
  8. 小邪 小邪 Google Chrome 16.0.912.63Windows 7 x64 Edition

    Mysql表示鸭梨很大,在角落里哭泣 ( ̄▽ ̄)

    38楼
    • zwwooooo zwwooooo Firefox 8.0Windows 7 x64 Edition

      @小邪
      小邪好像现在学数据库了?能否对wp的调用写几篇优化方面的文章?哈。

    • 小邪 小邪 Google Chrome 16.0.912.63Windows 7 x64 Edition

      @zwwooooo
      嘿嘿,你这样做木有关系啦,前面咱是开玩笑的,因为WP在显示标签云的时候已经从数据里把每个标签的文章数取出来然后拿来控制字体大小了。
      我还木有开始学数据库啦,现在课程是从基础html开始的,毕竟照顾到那些啥都不懂的人。
      优化的话,查询代码优化、MYSQL自身的优化、缓存基本上应该就这三样了。要是查询数量大的话挂个缓存就OK咯,再不行的话要调整索引,数据表结构有些程序也有问题,再优化要根据需要换数据库程序了 ( ̄▽ ̄),扯远了。
      不过感觉咱关于数据库方面的知识还不够深入,木有办法写给力的文章呢。因为WP本身数据库结构是不变的,能优化的应该只能从查询语句和缓存下手了。所以如果要写文章的话就只能建议用缓存插件神马的,查询语句要看需要查啥,有时间倒是可以写篇文章讲讲联合查询。

    • zwwooooo zwwooooo Firefox 8.0Windows 7 x64 Edition

      @小邪
      WP的很多函数本身已经是有缓存效果的了,所以一般我会尽量用WP自身函数实现需要的功能,如果是自己另外写的(如用sql语句)就要考虑了。

  9. A.shun A.shun Opera 12.00Windows XP

    挺实用的
    样式增强下就好了

    39楼
  10. yesureadmin yesureadmin Google Chrome 17.0.963.66Windows 7

    行,是行,但CSS巨不好写啊,尤其哪个屁股。。

    40楼
  11. TekTea TekTea Firefox 15.0.1Windows 7

    z大,你右侧的“标签”功能能否给我完整的代码呢?我现在的主题所用的标签在IE6和360浏览器下特效全部失效,唉,我看你的兼容性倒是挺好的。。。方便的话,发给我EMAIL吧,多谢。

    41楼
    • zwwooooo zwwooooo Firefox 15.0.1Windows 7 x64 Edition

      @TekTea
      IE6还是放弃吧,要兼容就hack一下,不知道如何就算了吧,反正IE6不鸟也罢,至于360……这类加壳浏览器无视(当作IE),特别是360,还是别用了。

  12. TekTea TekTea Firefox 15.0.1Windows 7

    z大,我试了下你这个方法,貌似不管用了哦。。

    42楼

Leave a Reply


Welcome! o(∩_∩)o
X