Javascript AJAX调用-无法识别wordpress函数/类

Javascript AJAX调用-无法识别wordpress函数/类,javascript,jquery,ajax,wordpress,function,Javascript,Jquery,Ajax,Wordpress,Function,我使用Ajax调用获取响应,在响应文件中我使用了wordpress循环usng WP_Query()类。。。 但当我执行ajax时,它会返回致命错误: 致命错误:在第20行的C:\xampp\htdocs\business finder\WP content\themes\businessfinder\metabox\ajax-process.php中找不到类“WP\u Query” 以下是AJAX调用代码: var path = 'http://localhost/business-finde

我使用Ajax调用获取响应,在响应文件中我使用了wordpress循环usng WP_Query()类。。。 但当我执行ajax时,它会返回致命错误: 致命错误:在第20行的C:\xampp\htdocs\business finder\WP content\themes\businessfinder\metabox\ajax-process.php中找不到类“WP\u Query”

以下是AJAX调用代码:

var path = 'http://localhost/business-finder/wp-content/themes/businessfinder/metabox/ajax-process.php';    
      $.ajax({
        type: "POST",
        url: path,
        data: { param:folio_data  }
      }).done(function( msg ) {
             $( '#ajax_folio' ).html( msg );
             //alert( "Data Saved: " + msg );
     });
以下是响应文件代码:

<?php


print_r( $_POST['param'] );
if( !empty( $_POST['param'] ) ):
             echo spyropress_get_attached_posts1( $_POST['param'], 'ait-grid-portfolio' );
             echo '<br><br>';
        endif;




function spyropress_get_attached_posts1( $post_id = '', $post_type = '' ){
   //if( $post_id = '' || $post_type = '' ) return;
   $counter = 0;
    global $wp_query ;
   $query = new WP_Query( array( 'post_type' => $post_type, 'post__in' => $post_id ) );
  if( $query->have_posts() ):
    $out .= '<table border = "1">';
    while( $query->have_posts() ):
        $query->the_post();
                if( $counter == 6 ):
            $out .= '<tr class = "post_list">';
        else:
            $counter++;
        endif;    
            $out .= '<td>'.get_the_post_thumbnail(get_the_ID(), array(100,100)).'<br>'.get_the_title().'</td>';

        if( $counter == 6 ):
        $out .= '</tr>';
        $counter = 0;
        endif;    

    endwhile;
    $out .= '</table>';
  wp_reset_postdata();
  else:
    $out = 'No Posts Found....';
  endif;  
wp_reset_query();
return $out;
}

add_action( 'init', 'spyropress_get_attached_posts' );
?>

您编写了错误的ajax代码。您不能像这样使用ajax。见以下代码:

jQuery(document).ready(function($) {

 var dataString = {
                action: 'my_ajax',
                param: folio_data
            };
            jQuery.ajax
            ({
                type: "POST",
                url: "<?php  echo admin_url('admin-ajax.php'); ?>",
                data: dataString,
                cache: false,
                success: function(msg)
                {  
                     $( '#ajax_folio' ).html( msg );
                    //alert( "Data Saved: " + msg );

                }
            });
  });

 function ajaxDataSubmit(){
  global $wpdb; 
  $post_id = $_POST['param'];
   $post_type='ait-grid-portfolio';
   $counter = 0;
   global $wp_query ;
  $query = new WP_Query( array( 'post_type' => $post_type, 'post__in' => $post_id ) );
  if( $query->have_posts() ):
     $out .= '<table border = "1">';
   while( $query->have_posts() ):
    $query->the_post();
            if( $counter == 6 ):
        $out .= '<tr class = "post_list">';
    else:
        $counter++;
    endif;    
        $out .= '<td>'.get_the_post_thumbnail(get_the_ID(), array(100,100)).'<br>'.get_the_title().'</td>';

    if( $counter == 6 ):
    $out .= '</tr>';
    $counter = 0;
    endif;    

endwhile;
$out .= '</table>';
 wp_reset_postdata();
else:
   $out = 'No Posts Found....';
endif;  
wp_reset_query();
die($out);
}
add_action('wp_ajax_my_ajax', 'ajaxDataSubmit');//Logged in users
add_action('wp_ajax_nopriv_my_ajax', 'ajaxDataSubmit'); // Not logged in uNOTE: mer
jQuery(文档).ready(函数($){
变量数据字符串={
行动:“我的阿贾克斯”,
参数:对开数据
};
jQuery.ajax
({
类型:“POST”,
url:“”,
数据:dataString,
cache:false,
成功:功能(msg)
{  
$('#ajax_folio').html(msg);
//警报(“保存的数据:“+msg”);
}
});
});
函数ajaxDataSubmit(){
全球$wpdb;
$post_id=$_post['param'];
$post_type='ait-grid-portfolio';
$counter=0;
全局$wp_查询;
$query=新的WP_查询(数组('post_type'=>$post_type,'post_in'=>$post_id));
如果($query->have_posts()):
$out.='';
而($query->have_posts()):
$query->the_post();
如果($counter==6):
$out.='';
其他:
$counter++;
endif;
$out.='''.get_the_post_缩略图(get_ID(),array(100100))。
'。get_the_title()。'; 如果($counter==6): $out.=''; $counter=0; endif; 结束时; $out.=''; wp_reset_postdata(); 其他: $out='未找到帖子…'; endif; wp_reset_query(); 死亡($退出); } 添加动作(“wp\u ajax\u my\u ajax”,“ajaxDataSubmit”)//登录用户 添加动作('wp_ajax_nopriv_my_ajax','ajaxDataSubmit');//未登录uNOTE:mer
你完全错了。请阅读以下内容: