一直想知道wordpress和ajax是如何工作的,于是就拿 大发的“高性能WordPress之Ajax读者墙”来学习了~~
第一段代码,需要加载的地方
<code><div id="yefengs">这个地方需要ajax加载</div>
</code>
</code>
第二段代码 这段是放在前段的,放在html中,并用javascript标签包裹
<code>
jQuery(document).ready(function($) { //jQuery 预加载是执行
if ($("#yefengs").length) { //计算#yefengs标签长度,也就是判断#yefengs是否存在
var home_url="<?php echo esc_url(home_url('/')); ?>"; //获取博客当前的url地址
$.get(home_url + "?action=hotbox", function(data) { //博客地址加个 get参数,以获取hotbox的执行结果,并call出返回值传递给fuction
$("#yefengs").html(data);//把返回的的值放在#yefengs的标签里
});
return false; //如果不存在#yefengs 返回空
}
});
</code>
jQuery(document).ready(function($) { //jQuery 预加载是执行
if ($("#yefengs").length) { //计算#yefengs标签长度,也就是判断#yefengs是否存在
var home_url="<?php echo esc_url(home_url('/')); ?>"; //获取博客当前的url地址
$.get(home_url + "?action=hotbox", function(data) { //博客地址加个 get参数,以获取hotbox的执行结果,并call出返回值传递给fuction
$("#yefengs").html(data);//把返回的的值放在#yefengs的标签里
});
return false; //如果不存在#yefengs 返回空
}
});
</code>
第三段属于后台响应了
<code>
function hotbox(){ //创建函数啦
if( isset($_GET['action'])&& $_GET['action'] == 'hotbox' ){ //判断get存在,并且GET回来的的参数是hotbox
nocache_headers(); //这个函数类似好像是 设置页头,使之阻止不同浏览器的缓存
?>
<?php if(function_exists('hotpage')) hotpage(); //判断hotpage是否存在,若存在执行
die();
}
}
add_action('init', 'hotbox'); //添加动作 init貌似在前台执行
fuctions hotpage(){
//这里是要输出的结果~~~~~~函数~~什么其他的东西
}
</code>
function hotbox(){ //创建函数啦
if( isset($_GET['action'])&& $_GET['action'] == 'hotbox' ){ //判断get存在,并且GET回来的的参数是hotbox
nocache_headers(); //这个函数类似好像是 设置页头,使之阻止不同浏览器的缓存
?>
<?php if(function_exists('hotpage')) hotpage(); //判断hotpage是否存在,若存在执行
die();
}
}
add_action('init', 'hotbox'); //添加动作 init貌似在前台执行
fuctions hotpage(){
//这里是要输出的结果~~~~~~函数~~什么其他的东西
}
</code>
以上只是我的猜测~~~~真确性请考虑啊~我没做测试~~