2012-02-09 4 views
1

テーマのfunctions.phpの中に入れた簡単なAJAX関数があります。それは動作し、 "作業"は正しくjQueryのajaxリクエストに返されます。プラグインの中にAJAX関数を入れても機能しない

しかし、同様の機能をプラグインに置かれている場合代わりに、それはもはや動作し、ちょうど0

function addCustomer(){ 

    echo "working"; 
    die(); 

} 
add_action('wp_ajax_addCustomer', 'addCustomer'); 
add_action('wp_ajax_nopriv_addCustomer', 'addCustomer'); 

を返す私はまた、IF(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に置かれたとき、それは完璧に働いているように、このビットが、大丈夫です確信しています別のプラグインに配置します。

+0

を動作するはずです:この変更を修正するためには、以下のようにセクションをURLに。それが正しい方法です。 – thenetimp

+0

さて、私が投稿している単純なコードと、リンクされた記事がどのようにそれを行っているのかにはかなりの違いがあります。具体的には、彼らが何をしてくれたかを知りたいと思っています。クラス全体を良いプログラミングにすることは間違いありません。ノンスチェックでそれをブロックしていないという事実はありますか?もしそうなら、なぜ機能で動作しますが、プラグインでは機能しませんか? –

+0

あなたはデータを受け取っていないと確信していますか?あなたは返されたものを見ることができるように、残りのクライアントを使ってajax呼び出しを呼び出そうとしましたか?データ型はおそらくjsonリターンを期待しており、あなたはprintステートメントを使用しているので、それが要素になる可能性があります。あなたのAJAXコールコードがどのように見えるかを表示して、問題の両方の半分を見ることができます。 – thenetimp

答えて

1

私も同じ問題を抱えていましたが、デバッグ(firebug)で実行しているときに404エラーが発生しました。「/wp-admin/admin-ajax.php」という行が見つかりませんでした。あなたはあまりにもリンク先の記事を読んで、それを彼らはそれをやっている方法を行う必要があります

function ajaxSubmit(){ 
var newCustomerForm = jQuery(this).serialize(); 
jQuery.ajax({ 
    type:"POST", 
    url: "<?php echo home_url('/'); ?>/wp-admin/admin-ajax.php", 
    data: newCustomerForm, 
    success:function(data){ 
    jQuery("#feedback").html(data); 
    }, 
    error: function(errorThrown){ 
    alert(errorThrown); 
    } 
}); 
return false; 
} 

をし、それが

VK

関連する問題