Wordpress wp_ajax公共网址?

jla*_*gue 2 ajax wordpress

我想在我的主题中做一个ajax请求.

如果我登录后台,请求会,但如果我没有登录,则返回为空...请问有什么解决方案?

在我看来 :

$.ajax({
  type: "POST",
  url: 'http://www.mysite.com/wp-admin/admin-ajax.php',
  data: $('#EventForm').serialize()+'&action=event_form',
  success: function(response){
    if(response == 1){
      alert('ok');
    } else {
      alert('no ok');
  }
});
Run Code Online (Sandbox Code Playgroud)

在functions.php中(仅当我登录后台办公时才有效)

add_action('wp_ajax_event_form', 'ajax_event_form');
function ajax_event_form(){
  global $wpdb; 
  ...
  echo true;
  die;
}
Run Code Online (Sandbox Code Playgroud)

dig*_*ggy 7

来自Codex:wp_ajax_nopriv_(action)针对未登录的用户执行.因此,如果您希望在前端为访问者和登录用户触发,则可以执行以下操作:

add_action('wp_ajax_my_action', 'my_action_callback');
add_action('wp_ajax_nopriv_my_action', 'my_action_callback');
Run Code Online (Sandbox Code Playgroud)