2017-06-12 72 views
1

我想弄清楚Ajax和Wordpress插件是如何工作的,但它似乎很糟糕的记录。理想情况下,我想要的是:如何处理Wordpress插件中的Ajax发布请求?

  • 该插件获取它自己的Ajax URL来使用,这是全局定义的。
  • 该插件可以处理Ajax请求

据我所知,有一些用于此两个动作。一个用于登录用户,另一个用户没有帐户或权限。不过,我只想为表单创建一个Ajax端点。

我不是在寻找代码片段,只需要指向Wordpress Plugins和Ajax处理的写入方向即可。

+1

由于wordpress 4.4包含了其余的api,因此您可以为您的插件创建一个cusom端点并使用它:https:/ /developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/ – Steve

+0

谢谢。我知道有一个更好的方法。 – Niels

回答

1

我在下面的functions.php自己的AJAX功能实现的,只是尽量在这个插件,

的functions.php:

function prefix_ajax_delete_search() { 
    global $wpdb; 
    $user_id = get_current_user_id(); 
    $wpdb->delete('sf_save_search', array('id' => $_POST['tid'])); 
    wp_die(); 
} 
add_action('wp_ajax_delete_search', 'prefix_ajax_delete_search'); 

的script.js:

function deleteSearch(tid) { 
    var url = window.location.href; 

    jQuery.post(
     ajaxurl, 
     { 
      'action': 'delete_search', 
      'tid': tid, 
     }, 
     function(response){ 
      location.reload(); 
     } 
    ); 
}