2017-01-17 2 views
0

ajaxでwordpressの複数のカスタムテーブルからデータを取得する方法私はワードプレスのデータベースの州、都市、町、ピンコードで4つのテーブルを持って、私は名前またはデータベースからピンコードで結果を検索したい。wordperssでajaxを使用して複数のカスタムテーブルからデータを取得する方法

私はのfunctions.php

enter function wpse_load_custom_search_template(){ 
if(isset($_REQUEST['search']) == 'advanced') { 
    require('advanced-search-result.php'); 
    die(); 
}}add_action('init','wpse_load_custom_search_template'); 

およびshow結果、高度な検索用で

<form method="get" id="advanced-searchform" role="search" action="<?php echo esc_url(home_url('/')); ?>"> 

<h3><?php _e('Advanced Search', 'textdomain'); ?></h3> 

<!--PASSING THIS TO TRIGGER THE ADVANCED SEARCH RESULT PAGE FROM functions.php--> 
<input type="hidden" name="search" value="advanced"> 

<label for="name" class=""><?php _e('Search By Name: ', 'textdomain'); ?></label><br> 
<input type="text" id="cityname" value="" placeholder="<?php _e('Enter Name', 'textdomain'); ?>" name="name" /> 

<label for="name" class=""><?php _e('Search By Code: ', 'textdomain'); ?></label><br> 
<input type="text" value="" placeholder="<?php _e('Enter Pin Code', 'textdomain'); ?>" name="pincode" /> 

<input type="submit" id="searchsubmit" value="Search" /> 

登録フック私のテーマでadvanced-searchform.phpという名前のカスタム検索ボックスを持っています-result.php

私はデータベースからマッチデータのヒントを表示するデータフォームの3-4ワードを入力すると、オートコンプリートでajaxでデータを取得する方法を教えてください。

答えて

0

検索結果を取得するために関数を呼び出すときに間違ったフックを使用していることがわかりました。

は次のフックを使用するためにあなたが持っているAJAX応答のための関数を呼び出すには:

add_action('wp_ajax_nopriv_[actionname]', '[functionname]'); 
add_action('wp_ajax_[actionname]', '[functionname]'); 

function [functionname]() { 
} 

をお使いのjQueryコードでは(あなたはAJAXを呼び出すところから)、あなたはデータとともに、「アクション」の変数を渡す必要があります。あなたはそれ以上の助けを必要とする場合は私に知らせてくださいFunction.php

data = { 
     action : 'test', 
     [other parametervalues] 
}; 
jQuery.post('<?php echo admin_url('admin-ajax.php');?>', data, function(response) {   
    // code based on your response from AJAX 
}); 

コード

add_action('wp_ajax_nopriv_test', 'callbackFunction'); 
add_action('wp_ajax_test', 'callbackFunction'); 

function callbackFunction() { 
    // your code 
    echo ""; // whatever you want to send in AJAX response 
    die(); 
} 

:以下は、1つのjQueryの例とfunction.phpコード

jQueryのコードです。

関連する問題