내 테마의 functions.php에 배치 한 간단한 AJAX 기능이 있습니다. 그것은 작동하고, "일하는"올바르게 jQuery 아약스 요청에 반환되므로, 사물의 측면은 괜찮습니다. 동일한 기능 대신 플러그인에 배치 될 때 나는 또한 내부 작업 후크를 배치하려 0플러그인 내부에 AJAX 기능이 작동하지 않습니다.
function addCustomer(){
echo "working";
die();
}
add_action('wp_ajax_addCustomer', 'addCustomer');
add_action('wp_ajax_nopriv_addCustomer', 'addCustomer');
는하지만, 더 이상 작동, 단지 리턴 (is_admin()) 경우 this tutorial에서 제안되었지만 행운은 없습니다.
나는 아마도 내가 굉장히 명백한 것을 간과 할 것이라고 생각하지만, 나는 그것을 이해할 수 없다. 내가 몇 시간 동안 인터넷 검색을했기 때문에 어떤 도움을 주셔서 감사합니다.
편집 : 여기에 내가 사용하고 AJAX 호출입니다 :
<script type="text/javascript">
jQuery('#newCustomerForm').submit(ajaxSubmit);
function ajaxSubmit(){
var newCustomerForm = jQuery(this).serialize();
jQuery.ajax({
type:"POST",
url: "/wp-admin/admin-ajax.php",
data: newCustomerForm,
success:function(data){
jQuery("#feedback").html(data);
},
error: function(errorThrown){
alert(errorThrown);
}
});
return false;
}
하지만 수신 기능이 functions.php에 배치 될 때이 완벽하게 그냥 때 일하고으로 나는,이 비트는 괜찮 확신 별도의 플러그인에 배치됩니다.
작동합니다 :이 변경 사항을 해결하려면 그것은 다음과 같이 섹션을 URL로. 그것이 올바른 방법입니다. – thenetimp
글쎄, 나는 게시하는 단순한 코드와 링크 된 기사가 어떻게 그것을했는지간에 꽤 차이가있다. 구체적으로 그들이 정확히 무엇을했는지 알고 싶습니다. 제대로 작동하도록 만들었습니다. 모든 것을 수업으로 만드는 것이 좋은 프로그래밍이지만 반드시 필요한 것은 아닙니다. 내가 차단하고있는 nonce 체크가 없다는 사실이 있습니까? 그렇다면 왜 함수에서 작동하지만 플러그인에서는 작동하지 않습니까? –
데이터를받지 못하셨습니까? 나머지 클라이언트를 사용하여 ajax 호출을 호출하려고 했으므로 리턴 된 것을 볼 수 있습니까? 데이터 유형은 아마도 json return을 기대하고 있으며 print 문을 사용하고 있으므로 이것이 중요 할 수 있습니다. AJAX 호출 코드가 어떤 모습인지 보여줌으로써 두 가지 문제를 모두 볼 수 있습니다. – thenetimp