在wordpress中自定义ajax请求

我的问题涉及到我应该从我的页面视图中创建一个我想要调用的ajax函数。

我在自定义表单上使用jQueryvalidation器,应该检查输入的邮政编码对我的有效zipcodes数据库。

我只需要知道这个函数应该存在的位置。

通常在使用非wordpress网站时,我会创建一个包含我的ajax函数的PHP文件,并通过引用此页面的URL并传递一些参数来调用它们。

我如何用wordpress实现这一目标? 我在哪里可以显式调用php文件并传递参数?

注意:我想像这样调用ajax函数:

$.post('http://mysite.com/ajax-functions.php?fxn=zipcodes', {zipCode:00000}, function(response){ // do stuff }); 

谢谢

事实certificate,您可以将函数挂钩到ajax函数中

http://www.1stwebdesigner.com/css/implement-ajax-wordpress-themes/

有WordPress ajax挂钩,有助于使用ajax创建function。 WordPress允许管理员ajax运行任何function。 以下代码有助于在wordpress中使用自定义ajax。

    '. $_POST['id']; echo $getid; // do something exit(); // this is required to return a proper result } ?> 

HTML部分

 Click On this 
Ajax Result will display here

我认为一种简单的方法是创建一个新模板并将此模板分配给新页面。 然后你可以在这个模板文件中编写你的代码,并使用页面的url来获取ajax请求

尝试这个,最简单的方法,我已经多次这样做了:

第1步:在functions.php中添加这些代码段

 add_action( 'wp_ajax_nopriv_add_to_folder', 'add_to_folder' ); add_action( 'wp_ajax_add_to_folder', 'add_to_folder' ); function add_to_folder() { global $wpdb; $lbm_add_request_table = $wpdb->prefix . 'lbm_add_request'; $user_id = get_current_user_id(); $lbmuid = $_COOKIE['lbmuid']; $lib_data_id = $_POST['lib_data_id']; $return = array(); $return['lib_data_id'] = $lib_data_id; $getAddedData = $wpdb->get_row("SELECT * FROM $lbm_add_request_table WHERE lbmuid = '$lbmuid' AND lib_data_id = $lib_data_id ", ARRAY_N); if ($getAddedData != null) { $wpdb->delete( $lbm_add_request_table, array( 'lbmuid' => $lbmuid,'lib_data_id' => $lib_data_id) ); $return['status'] = 'deleted'; }else{ $wpdb->insert( $lbm_add_request_table, array( 'user_id' => $user_id, 'lbmuid' => $lbmuid, 'lib_data_id' => $lib_data_id, 'add_date' => current_time('mysql') )); $return['status'] = 'added'; } echo json_encode($return); exit(); } 

第2步:现在在模板页面中调用ajax