WooCommerce货币符号

时间:2017-01-27 19:38:46

标签: woocommerce currency symbols

我最近正在为我的客户端使用WooCommerce WordPress项目,我正在为WooCommerce WordPress编辑插件。我试图显示产品价格以包含货币代码使用此功能

 * @param mixed $item
 * @param bool $inc_tax (default: false).
 * @param bool $round (default: true).
 * @return float
 */
public function get_item_total( $item, $inc_tax = false, $round = true ) {

    $qty = ( ! empty( $item['qty'] ) ) ? $item['qty'] : 1;

    if ( $inc_tax ) {
        $price = ( $item['line_total'] + $item['line_tax'] ) / max( 1, $qty );
    } else {
        $price = $item['line_total'] / max( 1, $qty );
    }

    $price = '<span class="price">' . $round ? round( $price, wc_get_price_decimals() ) . '</span>' : '<span class="price">' . $price . '</span>' ;

    return apply_filters( 'woocommerce_order_amount_item_total',  $price, $this, $item, $inc_tax, $round ); 
}

但它没有用货币符号吐出55这样的数字。无论如何得到货币符号的数字,如$ 55?

感谢您的帮助

2 个答案:

答案 0 :(得分:0)

ty rgdesign

这是现在可以解决的问题

public function get_item_total( $item, $inc_tax = false, $round = true ) {

    $qty = ( ! empty( $item['qty'] ) ) ? $item['qty'] : 1;

    if ( $inc_tax ) {
        $price = ( $item['line_total'] + $item['line_tax'] ) / max( 1, $qty );
    } else {
        $price = $item['line_total'] / max( 1, $qty );
    }

   $currency_symbol = get_woocommerce_currency_symbol();

   $price = $round ? round($price, wc_get_price_decimals() ): $price;

$price = '<span class="price">' .$currency_symbol . $price .'</span>';  
    return apply_filters( 'woocommerce_order_amount_item_total',$price, $this, $item, $inc_tax, $round ); 
}

答案 1 :(得分:0)

我觉得这很容易。只需将以下代码块插入主题文件夹下的 functions.php 文件即可。

//Change the symbol of an existing currency
add_filter('woocommerce_currency_symbol', 'change_existing_currency_symbol', 10, 2);
     switch( $currency ) {
          case 'USD': $currency_symbol = 'USD&#36;'; break;
}
     return $currency_symbol;
}