Change cart totals title text on cart page in Woocommerce
Asked Answered
D

3

7

I'm looking to change the text "Cart Totals" in the cart totals div in WooCommerce or remove it totally with an action.

I've added different text above the box in using

add_action( 'woocommerce_before_cart_totals', 'custom_before_cart_totals' );
function custom_before_cart_totals() {
        echo '<h2>Checkout</h2>';                                                
}

But I cant find a way to remove the default wording "Cart Totals" other than editing a WooCommerce template or target and hiding with css, but would love something that I can place in the functions file to either change the old text or remove it completely.

Any advice would be appreciated.

Default Cart Totals Example

Dele answered 25/8, 2018 at 3:49 Comment(2)
Hi Donny Dug, WooCommerce not provided any Hook to change cart totals text.. Either you can hide this text through css. or you need to change text in WooCommerce Cart Page template file..Nebiim
Yes, thats the issue, however Loics answer worked perfectly!Dele
A
15

It is possible using the WordPress filter hook gettext.

1) Removing "Cart totals":

add_filter( 'gettext', 'change_cart_totals_text', 20, 3 );
function change_cart_totals_text( $translated, $text, $domain ) {
    if( is_cart() && $translated == 'Cart totals' ){
        $translated = '';
    }
    return $translated;
}

2) Replace (or change) "Cart totals":

add_filter( 'gettext', 'change_cart_totals_text', 20, 3 );
function change_cart_totals_text( $translated, $text, $domain ) {
    if( is_cart() && $translated == 'Cart totals' ){
        $translated = __('Your custom text', 'woocommerce');
    }
    return $translated;
}

Code goes in function.php file of your active child theme (or active theme). Tested and works.

Or you can remove it from the Woocommerce template cart/cart_totals.php

Answer answered 25/8, 2018 at 4:29 Comment(2)
Legend, this is exactly what we were looking for, it works perfectly. thanks!Dele
Is there any way to remove the <h2></h2>as well?Ambidexter
S
3
function change_cart_totals($translated){
  $translated = str_ireplace('Cart Totals', 'Cart Total', $translated);
  return $translated;
}
add_filter('gettext', 'change_cart_totals' );
Sapiential answered 21/11, 2019 at 12:32 Comment(1)
Code-only answers are generally frowned upon on this site. Could you please edit your answer to include some comments or explanation of your code? Explanations should answer questions like: What does it do? How does it do it? Where does it go? How does it solve OP's problem? See: How to anwser. Thanks!Bonar
F
-1

Duplicate the cart-totals.php theme from woocommerce into your own theme, and replace this line:

<h2><?php esc_html_e( 'Cart totals', 'woocommerce' ); ?></h2>
Farrahfarrand answered 8/11, 2021 at 7:54 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.