在WordPress中,所有的ajax请求都通过admin-ajax.php接管,只需要后台简单的添加动作,即可实现ajax请求。

创建函数

ajax分为管理员权限和普通用户权限,统一以wp_ajax开头,首先,在插件或者主题functions.php文件中,创建一个函数,例如:

function fun_hello_world(){

echo '大家好,我是渣渣灰';

wp_die();//停止内容

}

添加钩子

add_action('wp_ajax_hello_world', 'fun_hello_world');//管理员调用

add_action('wp_ajax_nopriv_hello_world', 'fun_hello_world');//未登录用户可以调用

其中,第一个为钩子名称,wp_ajax_后面的内容,你自己起,例如这儿以hello_world结尾。第二个参数为函数名称,我绑定了上面创建的这个函数。

那么,在管理员权限下,可以调用第一个动作,非管理员,可以调用第二个动作。调用第一个,如果没有登录,调用的话则为400错误。

调用方法

使用jquery。必须包含参数action,这个就是上面注册的名称了。

var data = {action: 'hello_world'}

$.post("<?php echo admin_url('admin-ajax.php');?>", data, function (data) {

//获取内容回调

});

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐