Добавить текст к общей цене только на странице оформления заказа в Woocommerce - PullRequest
3 голосов
/ 20 марта 2019

У меня есть следующий код, который добавляет текст суффикса в общий раздел ОБА корзины и страниц оформления заказа:

add_filter( 'woocommerce_cart_total', 'custom_total_message' );
function custom_total_message( $price ) {
    $msg = 'Prices for grocery items may vary at store. Final bill will be based on store receipt.<br />';

    return $price . $msg;
}

Однако я хочу, чтобы текст суффикса отображался ТОЛЬКО на кассе, но не на странице корзины.

Как мне это сделать?

1 Ответ

3 голосов
/ 20 марта 2019

Просто используйте Условные теги Woocommerce , чтобы ограничить отображение только на странице оформления заказа ...

Теперь вам лучше вместо этого использовать следующий хук, чтобы избежать проблем, плавая числа с плавающей запятой и общее количество укусовсумма:

add_filter( 'woocommerce_cart_totals_order_total_html', 'custom_total_message_html', 10, 1 );
function custom_total_message_html( $value ) {
    if( is_checkout() )
        $value .= __('Prices for grocery items may vary at store. Final bill will be based on store receipt.') . '<br />';

    return $value;
}

Или, что еще лучше, в отдельной строке таблицы после итога, используя вместо этого:

add_action( 'woocommerce_review_order_after_order_total', 'review_order_after_order_total_callback' );
function review_order_after_order_total_callback(){
    $text = __('Prices for grocery items may vary at store. Final bill will be based on store receipt.');

    ?><tr class="order-total"><th colspan="2"><?php echo $text; ?></th></tr><?php
}

Код идет в файл function.php вашей активной дочерней темы (илитема).Протестировано и работает.


Если вы решите сохранить свой первоначальный хук, используйте следующее:

add_filter( 'woocommerce_cart_total', 'custom_total_message', 10, 1 );
function custom_total_message( $price ) {
    if( is_checkout() )
        $price .= __('Prices for grocery items may vary at store. Final bill will be based on store receipt.') . '<br />';

    return $price;
}

Код входит в файл function.php вашей активной дочерней темы (или темы).).Непроверенные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...