2016-06-18 8 views
0

私はワードプレスを初めて使っています。 jqueryで変更イベントを作成し、スクリプトをエンキューしてローカライズしました。なぜajax_object.ajax_urlは定義されていないと言っているのですか

変更イベント時にコンソールにajax_object.ajax_urlを出力すると、未定義と表示され続けます。しかし、私出力それだけコンソールへのajax_objectが、私はこの

["ajax_url", "http://localhost/wordpress/wp-admin/admin-ajax.php"] 

を取得するときに私はajax_object.ajax_url、その本当に奇妙なを使用する場合、それは未定義と言う理由を私は理解していません。以下は私が使用しているコードです。すべてのヘルプは本当に

をいただければ幸いです
function myEnqueue($hook){ 

    if("post.php" != $hook && "post-new.php") { return; }; 

    wp_enqueue_script("ajax-script",plugins_url("/js/meta.js",__FILE__),["jquery"]); 
    wp_localize_script("ajax-script","ajax_object",["ajax_url",admin_url("admin-ajax.php")]); 
} 


add_action("admin_enqueue_scripts","myEnqueue"); 

Javascriptのコード

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

    $("#my_plugin_field").change(function() {//the selector and event 
      console.log(ajax_object); 

    }); 

    }); 

答えて

0
wp_localize_script('ajax-script', 'ajax_object', array('ajax_url' => admin_url('admin-ajax.php'))); 

それとも5.4+ array構文を使用したい場合は

wp_localize_script('ajax-script', 'ajax_object', ['ajax_url' => admin_url('admin-ajax.php')]); 
0

変更このライン

wp_localize_script('ajax-script', 'ajax_object', array('ajaxurl' => admin_url('admin-ajax.php'))); 
関連する問題