WooCommerce - добавьте $ order_total для кнопки размещения заказа

Я хочу добавить $order->get_total(); к моей кнопке размещения заказа в woocommerce на странице оформления заказа. Поэтому я просто хочу, чтобы сумма отображалась в виде строки.

Это то, что у меня есть в моем functions.php, который возвращает пустое значение.

add_filter( 'woocommerce_order_button_text', 'woo_custom_order_button_text' ); 

function woo_custom_order_button_text() {
    return __( $order->get_total(), 'woocommerce' ); 
}

Я тоже пробовал это:

function woo_custom_order_button_text() {
    return __( $order_total, 'woocommerce' ); 
}

Оба фрагмента возвращают пустое значение, ничего.

Как это может быть сделано? Спасибо.


person Magnus Pilegaard    schedule 30.01.2017    source источник
comment
Возможно ли, что $ order_total просто не определен? Разве вы не должны передать его в качестве параметра функции? или добавьте глобальный $ order_total; линия?   -  person Ofir Baruch    schedule 30.01.2017


Ответы (1)


Вы должны использовать WC(), который является псевдонимом global $woocommerce, для доступа к данным, связанным с WooCommerce, и для доступа к информации о корзине, которую вы должны использовать WC()->cart.

Этот код должен работать на вас.

add_filter('woocommerce_order_button_text', 'woo_custom_order_button_text');

function woo_custom_order_button_text()
{
    $cart_total = WC()->cart->total;    
    return __('Your text ' . $cart_total, 'woocommerce');
}

Надеюсь это поможет!

person Raunak Gupta    schedule 30.01.2017
comment
Я этого не знал, я тестировал global $woocommerce;, код работает, как бы то ни было, я обновляю свой ответ. и спасибо @LoicTheAztec, я всегда узнаю от вас что-то новое. :) - person Raunak Gupta; 30.01.2017