Hook
$action = 'my_custom_action';
// 为未登录的用户触发Ajax 操作。
do_action ( "wp_ajax_nopriv_{$action}" );
// 为已登录用户触发经过身份验证的Ajax 操作。
do_action ( "wp_ajax_{$action}" );
如果不确定是否用户身份是否会出发,两种方法可同时挂载。
请求
// https://www.disyo.com/wp-admin/admin-ajax.php
$adminAjaxUrl = admin_url('admin-ajax.php');
// 插件自定ajax链接
$action = 'my_custom_action';
$customAjaxUrl = add_query_arg('action', $action, $adminAjaxUrl);
只要$_REQUEST[‘action’]提供了值,它就可以用于任何类型的请求方法(GET、POST、PUT、PATCH、DELETE)。此操作值用于触发操作。如果没有注册动作处理程序,则返回一个字符串0。
后端例子
function my_custom_action(){
$result = false;
if ( $result ) {
wp_send_json_error();
}else {
wp_send_json_success();
}
}
add_action('wp_ajax_my_custom_action', 'my_custom_action');
前端请求
$.post("https://www.disyo.com/wp-admin/admin-ajax.php?action=my_custom_actiom", {
}, function(data, status){
});
© 版权声明
特别声明:该文观点仅代表作者本人,"遇见科技圈"仅提供信息存储空间服务,如需转载、摘编请取得原作者授权。
THE END
暂无评论内容