威言威语
我愿像茶,苦涩留心,清香予人。
威言威语
当前位置: 首页 > 设计 > 正文

WordPress侧边栏JQuery版TAB选项卡

TAB选项卡是一个非常有用的东西,减少了侧边栏的长度,使用JQuery效果美化博客界面。威言威语教你如何在WordPress侧边栏上使用JQuery版TAB选项卡。
WordPress侧边栏JQuery版TAB选项卡

有时候我们不希望WordPress侧边栏过长,但是又想能展示多一些东西,那么将2个或者3个进行组合显示成了最佳选择,做个tab选项卡,把最新文章、热评文章、随机文章放在一个tab选项卡里,这样就能轻松实现我们想要的!

我简单讲下使用过程,高手就路过吧。特别提示:编辑代码请用编辑器,如DreamWeaver,请勿使用记事本。

请确保你网页已经包含了Jquery框架。

第一:将下面的代码的复制到主题的function.php文件中。这个是获取热评日志的函数,这里有专门文章介绍:WordPress热评日志的调用


// 获得热评文章
function simple_get_most_viewed($posts_num=10, $days=60){
    global $wpdb;
    $sql = "SELECT ID , post_title , comment_count
           FROM $wpdb->posts
           WHERE post_type = 'post' AND TO_DAYS(now()) - TO_DAYS(post_date) < $days
           ORDER BY comment_count DESC LIMIT 0 , $posts_num ";
    $posts = $wpdb->get_results($sql);
    $output = "";
    foreach ($posts as $post){
        $output .= "\n<li><a href= \"".get_permalink($post->ID)."\" rel=\"bookmark\" title=\"".$post->post_title." (".$post->comment_count."条评论)\" >". mb_strimwidth($post->post_title,0,30)."</a></li>";
    }
    echo $output;
}

第二:将下面的代码保存为r_tab.php,放到主题的文件夹下面。


<h3><span class="selected">最新日志</span><span>热评日志</span><span>随机日志</span></h3>
	<div id="tab-content">
		<ul><?php $myposts = get_posts('numberposts=10&offset=0');foreach($myposts as $post): ?>
					<li><a href="<?php the_permalink(); ?>" rel="bookmark" title="详细阅读 <?php the_title_attribute(); ?>"><?php echo cut_str($post->post_title,30); ?></a></li>
					<?php endforeach; ?></ul>
		<ul class="hide"><?php simple_get_most_viewed(); ?></ul>
		<ul class="hide"><?php $myposts = get_posts('numberposts=10&orderby=rand');foreach($myposts as $post): ?>
					<li><a href="<?php the_permalink(); ?>" rel="bookmark" title="详细阅读 <?php the_title_attribute(); ?>"><?php echo cut_str($post->post_title,30); ?></a></li>
						<?php endwhile;endif; ?></ul>
					</div>

第三:打开sidebar.php,将下面的代码插入合适位置

<div id="tab-title"><?php include('r_tab.php'); ?></div>

第四:JQuery控制切换的代码


<script type="text/javascript">
jQuery(document).ready(function(){
jQuery('#tab-title span').click(function(){
	jQuery(this).addClass("selected").siblings().removeClass();
	jQuery("#tab-content > ul").slideUp('1500').eq(jQuery('#tab-title span').index(this)).slideDown('1500');
});
});
</script>

第五:CSS


#tab-title .selected{color:#000;font-weight:bold}
#tab-title span{padding:5px 18px 8px 1px;border-right:0px;margin-left:-1px;cursor:pointer;}
#tab-content .hide{display:none;}
#tab-content ul{padding:5px 10px;overflow:hidden;border-right:1px solid #ccc;border-left:1px solid #ccc;background:#fff;}
#tab-content ul li{line-height:25px;list-style:none}

好了,这样应该就能达到想要的效果了,当然实际效果还要自己根据自己的主题进行微调。

您可能还会对这些文章感兴趣!

WordPress侧边栏JQuery版TAB选项卡:目前有 66 条评论

  1. Youth.霖
    33楼
    Youth.霖:Google Chrome 34.0.1847.131 Windows 7

    :cool: 做成小工具更好些~

    2014-05-05 22:34 回复
  2. 何敏杰
    32楼
    何敏杰:QQ浏览器 7.5.18000.400 Windows 7

    Parse error: syntax error, unexpected T_ENDWHILE in /www/web/test_heminjie_com/public_html/wp-content/themes/sahifa/r_tab.php on line 1

    不知道怎么,加了这句后老是报错,一步一步照着做的,奇怪····博主帮忙看看哈~~~谢谢~~

    2013-12-22 22:48 回复
  3. 淘宝屋
    31楼
    淘宝屋:Google Chrome 20.0.1132.57 Windows 7

    呵呵,我还把标签弄到一块了,总共4个,可是我还想把评论搞到一块总是出错,能解惑吗?站点是503.hk我弄的新站 :cool:

    2012-08-02 11:19 回复
  4. mack
    30楼
    mack:Internet Explorer 9.0 Windows 7

    我按此方法修改了一下,这个“三合一”的效果显示在正文里面。想请教一下,怎么使用wordpress“小工具”,把他调用到侧边栏里?

    2012-01-29 15:01 回复
  5. 象牙塔
    29楼
    象牙塔:Internet Explorer 8.0 Windows XP

    谢谢啊,这个方法整理的很完善了,借用下这个思路!

    2011-12-10 19:14 回复
  6. 皇家元林
    28楼

    这个功能不错,如果加在自定义widget应该怎么弄

    2011-10-29 17:38 回复
  7. 奔跑
    27楼
    奔跑:Firefox 6.0 Windows XP

    原来这个叫 jQuery tab,我喜欢。

    2011-08-26 13:43 回复
  8. 晓伍
    26楼
    晓伍:Google Chrome 12.0.742.122 Windows 7

    JQUERY需要提前加载的,好像,没有尝试过,正准备尝试这样弄弄呢

    2011-07-25 23:23 回复
  9. hongjun
    25楼
    hongjun:Google Chrome 10.0.648.205 Windows 7

    我使用了你的风格,什么都没改,为什么TAB点击没反应呢,是因为WP3.2的原因么 帮忙看看好么 谢谢

    2011-07-06 17:18 回复
    • William
      WilliamInternet Explorer 9.0 Windows 7

      @hongjun应该不会吧,我也升级WP3.2了,一切正常啊,应该跟你装的插件有冲突了

      2011-07-06 23:45 回复
      • hongjun
        hongjun:Google Chrome 10.0.648.205 Windows 7

        @William我看了 确实是和jQuery Colorbox 冲突,我试着用改也没什么作用 好像和lightbox也冲突,我看你现在也有类似插件,是什么啊

        2011-07-07 12:58 回复
  10. qiuyili
    24楼
    qiuyili:Internet Explorer 6.0 Windows XP

    说的太对了,就我现在的博客就出现这种问题,一但网速慢,tab效果就会拉的很长缩不回去。

    2011-05-06 19:32 回复
  11. 冰菁翎羽
    23楼
    冰菁翎羽:搜狗高速浏览器 Windows XP

    知更鸟2.4正式版的貌似不能使用这个

    2011-01-23 17:20 回复
    • William
      WilliamFirefox 3.6.13 Windows 7

      @冰菁翎羽额,是么,换一下上面的调用函数就行了。其实上面的只是给个方式而已,重要的还是自己拓展

      2011-01-23 22:01 回复
      • 冰菁翎羽
        冰菁翎羽:搜狗高速浏览器 Windows XP

        @William呵呵,对于这个研究不多,不知道咋修改,帮忙下

        2011-01-25 22:30 回复
  12. 奚少
    22楼
    奚少:Firefox 3.6.13 Windows 7

    额,我还是没看明白…

    2011-01-21 15:22 回复
  13. 空空裤兜
    21楼
    空空裤兜:Internet Explorer 8.0 (Compatibility Mode) Windows 7

    本地测试发现只有最近文章显示,热门文章和随机的点不到

    为什么会这样呢

    2011-01-10 12:58 回复
    • William
      William世界之窗浏览器 Windows XP

      @空空裤兜看了下你的站,其实你把我上面代码中 热门文章 ul 中的代码换成你博客上的热门文章的代码,然后应该就可以了。随机的也是

      2011-01-11 15:53 回复

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

gravatar

question razz sad smile redface biggrin eek shock confused cool lol mad rolleyes wink cry