2017-02-24 90 views
0

我在我的國際woocommerce商店上運行currency switching widget。我正在一些jQuery的工作,以國家代碼的價格。因此,而不是價格顯示爲500美元,它將顯示爲500美元,並更新時,用戶更改貨幣。在woocommerce中添加貨幣代碼到價格

它工作正常,直到點擊。 console.log (newcurrency);在點擊時記錄正確的國家代碼,但下一行不起作用。

$(function() { 

    // Get current currency 
    var currency = $(".currency_switcher .active").text(); 

    // Add currency before price 
    $(".woocommerce-Price-amount").prepend(currency); 

    //On click, update currency 
    $(".currency_switcher li a").click(function() { 

     var newcurrency = $(this).text(); 

     console.log (newcurrency); 
     $(".woocommerce-Price-amount").prepend(newcurrency); 

    }); 

}); 

任何想法爲什麼該行不起作用?

+0

我的猜測是,它是通過AJAX添加或不存在。你應該檢查生成的html(一個在Firefox中使用開發工具的選項)。使用像http://stackoverflow.com/a/29279081/1004312 – Christina

回答

1

**解決方案1:**添加自定義貨幣/符號

要WooCommerce 2.0+添加自定義貨幣,複製並粘貼在你的主題functions.php文件的代碼,並換出的貨幣代碼和符號與你自己。

保存更改後,應該可以從WooCommerce設置中使用它。

add_filter('woocommerce_currencies', 'add_my_currency'); 

function add_my_currency($currencies) { 
    $currencies['ABC'] = __('Currency name', 'woocommerce'); 
    return $currencies; 
} 

add_filter('woocommerce_currency_symbol', 'add_my_currency_symbol', 10, 2); 

function add_my_currency_symbol($currency_symbol, $currency) { 
case 'ABC': $currency_symbol = '$'; break; { 
} 
return $currency_symbol; 
} 

如果使用子主題,代碼不受更新的影響。

**解決方案2:** View this link **解決方案3:** View this link