[WordPress] ワードプレスのアヤックス検索機能

スポンサーリンク

Question

ajax を追加することを試みたが

検索機能管理者 ajax.php ファイルを使用して自分のサイトとまたそれなしで、しかし運無しで。あまりにも、ウェブサイトの他の部分で JQuery を使用だし、スクリプトは、このコードにより動作を停止します。私はそれをコメント アウト、(ナビゲーションバーをスライディング) のような他のスクリプトは再び作業を開始します。これは、コードは、—-functions.php—

function wpa56343_search()
 {
  global $wp_query;
  $search = $_POST['search_val'];
  $args = array(
    's' => $search,
    'posts_per_page' => 5
  );
  $wp_query = new WP_Query( $args );

  get_template_part( 'search-results' );

  exit;
 }
 add_action('wp_ajax_nopriv_wpa56343_search', 'wpa56343_search'); 
 add_action('wp_ajax_wpa56343_search', 'wpa56343_search');

—JS ファイル—

jQuery(document).ready(function() {   
$("#searchsubmit").click(function(e){
    e.preventDefault();
    var search_val=$("#s").val(); 
    $.ajax({
        type:"POST",
        url: "./wp-admin/admin-ajax.php",
        data: {
            action:'wpa56343_search', 
            search_string:search_val
        },
        success:function(data){
            $('#results').append(response);
        }
});   
});

とエンキュー スクリプト機能ファイルの wp_enqueue_script を使用しています。このコードを追加するとき jquery のすべての機能はちょうど停止し、検索ページの私は既定のページにリダイレクトされます。送信ボタンの click イベントはまたトリガー取得されません。誰かがアドバイスをしてくださいすることができますか?すべてをしようとしていますが、何もしているようだ

答え

get_template_part を使用することはできません。Json 形式でデータを渡すし、そのデータを使用します

function wpa56343_search()
{
    global $wp_query;
    $search = $_POST['search_val'];
    $args = array(
        's' => $search,
        'posts_per_page' => 5
    );
    $results = new WP_Query( $args );
    echo json_encode( $results );
    exit;
}

js のコードを変更しても

jQuery(document).ready(function($) {
    $("#search-container").click(function(e){
        e.preventDefault();
        var search_val=$("#s").val();
        $.ajax({
            type:"POST",
            url: "./wp-admin/admin-ajax.php",
            data: {
                action:'wpa56343_search',
                search_string:search_val
            },
            success:function(data){ alert(data);
                $('#results').append(response);
            }
        });
    })
});

http://stackoverflow.com/questions/27071766/ajax-search-functionality-in-wordpress

スポンサーリンク

Leave a Reply