2012-01-26 3 views
0

저는 제가하는 WordPress 테마에서 아약스를 처음으로 통합하려고합니다. 이것이 나의 첫 번째 시도이며 구문과 작동 원리에 대해 연구했습니다. 지금까지 스크립트는 제대로 실행되었지만 응답이 없습니다.

$.get 요청

$(document).ready(function(){ 
$.get('Ajax-nao.php',{cat:12,ponum:5,panum:1},function(data) { 
alert('data sent'+ data); 
}); 
}); 

아약스 - nao.php

$categoryid = $_GET['cat']; 
$postnum = $_GET['ponum']; 
$pagenum = $_GET['panum']; 

$args = array (
     'cat' => $categoryid, 
     'posts_per_page' => $postnum, 
     'paged' => $pagenum 
); 
$q = new WP_Query($args); 
while($q->have_posts()) : $q->the_post(); 
    $post_excerpt = get_the_excerpt(); 
    $wrapper = '<h2 class="column-titles">' . get_the_title() . '</h2>' . '<p>' . $post_excerpt . '</p>'; 
    echo $wrapper; 
endwhile; 

home.php < - 결과가 표시됩니다.

<div id="social-bar"> 
    <div id="other-posts" class="just-float-left"> 

    <div id="other-Posts-container"> 

    </div> 
    </div> 
</div> 

누구든지 내 실수를 지적 할 수 있습니까?

+0

은 성공적으로 호출되는 함수입니까? – Khodor

+1

'Ajax-nao.php'에 아무 것도 표시되지 않습니까? 당신은 방화 녀 (firebug)를 조사해보고 요청과 서버 응답을 보았습니까? –

+1

AJAX를 사용하지 않고 양식에서 직접 POST로 PHP를 호출 해 보았습니까? 스크립트에서 에코 응답을 받음으로써 문제를 해결하는 데 도움이 될 수 있습니다. – Prusprus

답변

1

WP_Query($args) 빈 세트를 반환합니다.

  echo $wrapper; 
endwhile 

에 : 당신의 PHP 스크립트의 끝에서

부터 변경

echo $wrapper; 
    exit(); 
endwhile 
echo "No results found!"; 

발견 된 데이터가있는 경우 보증을 얻을 것입니다.

+0

일반적으로 Ajax 호출이 백엔드의 올바른 스크립트를 치고 있다고 보장하기 위해 일부 실패 상태를 반향 출력하는 것이 좋습니다. – lewsid

+0

아직 아무것도 없습니다. 또한 "결과를 찾지 못했습니다!"라고 표시하지 않았습니다. 에코. –

+0

그러면 스크립트를 올바르게 호출하지 못하기 때문일 수 있습니다. PHP 스크립트의 경로는 스크립트 나 마크 업과 관련되어 있으므로 jquery와 같은 폴더에 없으면 경로를 수정해야합니다. – Prusprus

관련 문제