与其试图修改woocommerce的核心文件,不如利用它们的过滤器挂钩。首先,确保您使用的是woocommerce的最新版本。
来自woocommerce文档Add a custom currency / symbol:
要在WooCommerce 2.0+中添加自定义货币,请将此代码复制并粘贴到主题函数中。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 ) {
switch( $currency ) {
// Notice you are able to type the actual character instead of the hex value.
case \'ABC\': $currency_symbol = \'$\'; break;
}
return $currency_symbol;
}
也就是说,您的代码可能失败了,因为您没有使用
hex value of the currency symbol 您正在将其替换为。我相信会的
\'MAD\' => \'د...إ.\',
根据上的此参考
currency unicode values. 不应该有
)
最后也是。看见
line 545 of wc-core-functions.php
.