无需插件 利用ajax刷新wordpress边栏随机文章
发布时间:2011-09-06 19:32:38
有个朋友发信问我,我的边栏那个刷新一下的效果是如何实现的。能不能分享?
其实,我这几天就打算分享出来,就是时间不允许,现在就给大家分享下如何利用ajax刷新wordpress边栏的随机文章吧。
DEMO
点击本博客边栏的 “刷新一下”就可以看到。
如何实现?
首先确认你的主题中调用了js库,在主题文件header.php可以找到以下代码 。没有的话,请复制粘贴放在标签前。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
1 确定随即文章代码中id的范围。本博客的随机文章html代码大致如下所示。你也可以在你的主题模板中找到类似的代码。每个主题的调用函数大同小异,中间一大串的代码可以忽略。
<h2 class="sub">推荐阅读</h2>
<div id="postlist1">
<ul class="spy">
<?php $my_query = new WP_Query('orderby=rand&showposts=5'); ?>
<?php while ($my_query->have_posts()) : $my_query->the_post();?>
<li><?php $screen = get_post_meta($post->ID, 'screen', $single = true); ?>
<h2 style="overflow:hidden;"><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
</li>
?php endwhile; ?>
</ul>
</div>
<a href="#" id="another">刷新一下</a>
其中,你还需要添加个“刷新一下”到你的随即文章代码里 。也就是下面的代码。
<a href="#" id="another">刷新一下</a>
同时注意在 ul 标签前面的ID “postlist1” 和最后一个包裹“刷新”的ID “another”,下面的步骤会用到。
2 创建一个页面模板,名为Random Post。PS:下面的代码不要照搬。其中的随即文章调用函数从自己当前使用的主题中的sidebar.php直接复制进来。
<?php
/*
Template Name: Random Post
*/
?><?php $my_query = new WP_Query('orderby=rand&showposts=5'); ?>
<?php while ($my_query->have_posts()) : $my_query->the_post();?>
<li><?php $screen = get_post_meta($post->ID, 'screen', $single = true); ?>
<h2 style="overflow:hidden;"><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2></li>
<?php endwhile; ?>
3 创建一个使用上面模板的页面,并发布。
大家可以点击这里查看本站的这个页面 /random
4 jQuery
复制粘贴以下代码到你主题 header.php文件中,放在标签前。
其中的#polist1 和#another 在步骤一找到,结合你自身的主题更改。
<script type="text/javascript" charset="utf-8">
$().ready(function(){
$("#postlist1").load("/random/?offset="+offset);
$("#another").click(function(){offset = offset+5;
$("#postlist1")
.slideUp()
.load("/random/?offset="+offset, function() {
$(this).slideDown();
});});
</script>
5 直至全部结束,大功告成!
原文地址:这里


猜你喜欢
- 服务器数据存储安全是保障服务器正常运行的重要的环节,同时也是企业网络信息化建设的核心。每一家企业的管理层人员都非常重视存储在服务器的重要数据
- 相信这个问题近两天大家都遇到了吧,DZ官方说是js的冲突造成了,无从考究了,找到了一个解决方法:修改论坛目录下 includejscommo
- 这个方法要文档只有一个关键词才会生效 {dede:field name='ID' runphp
- 在谷歌于5月份推出的“搜索选项”中,有一个根据时间来限制搜索结果的功能,用户可以根据默认的“任何时间”、“去年”、“上周”、“最近”或者“过
- 从第一个商业浏览器 Netscape 算起,到2009年10月13日,浏览器已经度过了15年历史。我们在上一篇有关浏览器的历史的文章(浏览器
- 那些被封站心怀愤懑的朋友就不要看了,本帖希望能有较有深度以及技术性的讨论,而不欢迎谩骂。几个问题1、百度竞价排名开展之后的过去7年内,虽然竞
- 一、DHCP概述DHCP是动态主机配置协议(Dynamic Host Configure Protocol)的缩写。一台DHCP服务器可以让
- 今天上午在整理邮件的时候,看到谷奥的消息“Google Dashboard正式上线”,这样的一款服务
- 毛富大叔从事中文点击网赚的推广有三年多的时间了,基本上见证了中文点击网赚的潮起潮落。毛富大叔在推广中文点击新站的过程中有自己独到的见解,一个
- 1.Linux中如何表示硬盘,分区Linux内核读取光驱,硬盘等资源时均通过“设备文件”的形式进行,因此在linux系统中,将硬盘和分区表示
- 不久前入手了蓝天P870TM1G准系统,配置如下:1. Z370主板2. i9-9900k桌面处理器3. RTX2080移动版由于显卡太新的
- 一、安装增强插件1 选择"设备"--"安装增强功能",然后可以看到在虚拟机的光驱中自动加载了增强is
- 据悉,随着两岸“大三通”的逐步深化,除了大陆地区大力加强两岸交流之外,台湾经济部门也于2008年12
- 一、这里太专业,你插不上嘴?答:没你想象的那么专业。我学中文的,洪波也是学中文的,我们都能如鱼得水,你一定也行。陈一舟学物理的,我在武汉问他
- 一、常用服务简介1、DNS(Domain Name System):域名系统。它为Internet(因特网)上的计算机提供名称(即如“www
- 1、后台用户名和密码是否是明文保存的?建议增加昵称字段,区别后台的用户,同时对用户名和密码进行非规范的md5加密,例如加密以后截取15位字串
- 1、首先,在电脑桌面上双击vmware图标,打开软件。然后,点击打开一个虚拟机。2、进入虚拟机后,右键Terminal打开终端。3、或者按下
- 版主是论坛的一笔财富,没有出色的版主就没有优质的论坛。掌握了一定的论坛资源的版主,首先应该是一个管理者,其次是一个服务者,还应该是一个引导者
- HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP 协议的详细内
- 一、什么是组策略(一)组策略有什么用?说到组策略,就不得不提注册表。注册表是Windows系统中保存系统、应用软件配置的数据库,随着Wind