加入收藏 | 设为首页 | 会员中心 | 我要投稿 汉中站长网 (https://www.0916zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

在Wordpress中AJAX方法使用详解

发布时间:2022-06-24 11:23:47 所属栏目:教程 来源:互联网
导读:Wordpress中AJAX用法有很多,我们这里介绍两种简单的ajax使用方法,有兴趣了解的小编可以生起来看看吧. 1、哪两种AJAX方法 1.1、官方的方法,主要的思路是,在functions里增加wp_enqueue_script和wp_localize_script来增加AJAX的请求地址和调用脚本,如: $AJAX=
  Wordpress中AJAX用法有很多,我们这里介绍两种简单的ajax使用方法,有兴趣了解的小编可以生起来看看吧.
 
  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 );
 
  //phpfensi.com
 
  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,很小量的数据.
 
 

(编辑:汉中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!