1、哪两种AJAX方法
1.1、官方的方法
主要的思路是:
在functions里增加wp_enqueue_script和wp_localize_script来增加AJAX的请求地址和调用脚本。如:
$AJAX=array
(
"URL" => admin_url( "admin-ajax.php" ),
);
$AJAXURL=get_bloginfo("template_url")."/public/js/Test_ajax.js";
wp_enqueue_script( "my-ajax-request",$AJAXURL, array( "jquery" ) );
wp_localize_script( "my-ajax-request", "AJAX", $AJAX );
function _aaaa()
{
$id=$_POST["id"];
$json["info"]="rand=".rand(0,$id);
header("Content-Type: application/json");
echo json_encode($json);
exit;
}
add_action( "wp_ajax_aaaa", "_aaaa" ); // ajax for logged in users
add_action( "wp_ajax_nopriv_aaaa", "_aaaa" ); // ajax for not logged in users
当然也可以这样:
$AJAX=array
(
"URL" => admin_url( "admin-ajax.php" ),
);
$AJAXURL=get_bloginfo("template_url")."/public/js/Test_ajax.js";
wp_enqueue_script( "my-ajax-request",$AJAXURL, array( "jquery" ) );
wp_localize_script( "my-ajax-request", "AJAX", $AJAX );
function _aaaa()
{
$id=$_POST["id"];
$respond="rand=".rand(0,$id);
echo $respond;
die();
}
add_action( "wp_ajax_aaaa", "_aaaa" ); // ajax for logged in users
add_action( "wp_ajax_nopriv_aaaa", "_aaaa" ); // ajax for not logged in users
1.2、民间的方法
这个方法是在AJAX请求的时候,判断action等关键的参数来调用functions里相关函数。如:
function _bbbb()
{
if($_POST["action"]=="bbbb")
{
$id=$_POST["id"];
$json["info"]="rand=".rand(0,$id);
header("Content-Type: application/json");
echo json_encode($json);
exit;
}
}
add_action("init", "_bbbb");
也可以这样:
function _bbbb()
{
if($_POST["action"]=="bbbb")
{
$id=$_POST["id"];
$respond="rand=".rand(0,$id);
echo $respond;
die();
}
}
add_action("init", "_bbbb");
2、两种AJAX方法的效率
本地网速测试结果(发送的数据有id和action,很小量的数据):
wordpress中ajax方法使用方法|Wordpress中AJAX方法使用详解
http://m.bbyears.com/wangyezhizuo/74953.html
推荐访问: