wordpress中ajax方法使用方法|Wordpress中AJAX方法使用详解

更新时间:2019-10-23    来源:WordPress    手机版     字体:

【www.bbyears.com--WordPress】


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,很小量的数据):

本文来源:http://www.bbyears.com/wangyezhizuo/74953.html