2016-05-02 11 views
1

Ich habe eine Woocommerce-Website, die das Woocommerce Multilingual-Plugin von WPML verwendet, um mit Währungen umzugehen. Ich versuche, den Einkaufswagenbetrag in einem AJAX-Anruf zu bekommen, aber ich bekomme aus irgendeinem Grund falsche Währung. Wenn ich dieselbe Methode (get_cart_subtotal) in einer Seitenvorlage verwende, wird die korrekte Währung verwendet.Woocommerce: Verlieren Währung in Ajax Anruf

Hier ist meine sehr einfache Ajax-Aktion:

add_action('wp_ajax_nopriv_get_cart_total', function(){ 
    global $woocommerce; 
    echo $woocommerce->cart->get_cart_subtotal(); 
}); 

ich verwende:

  • WooCommerce 2.5.5
  • WPML Multilingual CMS 3.3.8 WooCommerce
  • Multilingual 3.7. 13

Antwort

0

Versuchen Sie zu verwenden wc_ajax statt wp_ajax. Ändern Sie auch Code in .js - es könnte so etwas sein:

$.post(wc_add_to_cart_params.wc_ajax_url.toString().replace('%%endpoint%%', 'get_cart_total'), data, function(response) { 
     if (!response) { 
      return; 
     } else { 
      //do something 
     } 
});