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 );
- //Vevb.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,很小量的数据.
新闻热点
疑难解答
图片精选