使用Wordpress提供给您的本机方法来利用Ajax请求。
在您的插件文件中,我们需要添加几个操作,以便我们可以发送ajax请求并由
admin-ajax.php文件进行解析。
add_action('wp_ajax_nopriv_ajax_request', 'ajax_controller');add_action('wp_ajax_ajax_request', 'ajax_controller');现在,我们在插件文件中构建了一个ajax控制器。这样做的目的是充当一个控制器,该控制器将根据请求
FN提供的参数来切换其输出
ajax(稍后会详细介绍)
function ajax_controller(){ $ret = ''; //our return variable switch($_REQUEST['fn']): case 'status' : $ret = update_status($_REQUEST['status']); break; endswitch; echo $ret; die(); //this makes sure you don't get a "1" or "0" appended to the end of your request.}请注意,该
update_status()函数是为了封装上述php代码而创建的。
现在我们已经绑定了动作,还有一个控制器,我们可以无限使用它来检索数据。我们只需要对ajax调用进行一些修改。首先,我们可以对“ rent /
sale”开关使用三元分配,而不是2个ajax调用,这将清除一切。其次,我们需要将URL地址更改为
/wp-admin/admin-ajax.php文件。
var $status = (this.value == "sale") ? this.value : 'rent';jQuery.ajax({ type: "POST", url: "/wp-admin/admin-ajax.php", data: { action: 'ajax_request', fn : 'status', //this is the $_REQUEST['fn'] from above status : $status }, success: function(data){ alert('Sale' + data['min']['data'][0]); }});该
action参数是必需的,这
fn是我的编码原则的结果。该
action属性必须直接匹配
add_action('wp_ajax_nopriv_和之后的内容add_action('wp_ajax_。这应该解决它。



