Support » Plugin: WooCommerce » Change Billing & Shipping title

  • Resolved yarintosh

    (@yarintosh)


    Hi,

    I have a site that is set to always ship to the billing address. I’d like to change the “Billing & Shipping” header to “Shipping Details” only.

Viewing 15 replies - 1 through 15 (of 19 total)
  • Thread Starter yarintosh

    (@yarintosh)

    I’ve found this code that works perfectly but it only works when using the Default to Billing address option which leaves the “Ship to a different address?” option on the checkout page.

    
    //Change the 'Billing details' checkout label to 'Contact Information'
    function wc_billing_field_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
    case 'Billing details' :
    $translated_text = __( 'Shipping Details', 'woocommerce' );
    break;
    }
    return $translated_text;
    }
    add_filter( 'gettext', 'wc_billing_field_strings', 20, 3 );

    What is the correct code that I need when using “Force shipping to the customer billing address” ?

    Plugin Support Rynald0s.a11n

    (@rynald0s)

    Automattic Happiness Engineer

    Hi @yarintosh!

    What is the correct code that I need when using “Force shipping to the customer billing address” ?

    You can force that by selecting the appropriate setting under “WooCommerce > Settings > Shipping > Shipping options” tab here:

    https://snipboard.io/yjhRSZ.jpg

    Please let us know how that goes.

    Cheers!

    Thread Starter yarintosh

    (@yarintosh)

    Hi of course but that’s not what I’ve been asking…

    If I’m using that option then the code I’ve added here will not change the title of the Billing section.

    Plugin Support Rynald0s.a11n

    (@rynald0s)

    Automattic Happiness Engineer

    Hi @yarintosh!

    The correct case then would be:

    Billing & Shipping

    You can also extend it to add more cases.

    Cheers!

    Thread Starter yarintosh

    (@yarintosh)

    //Change the 'Billing & Shipping details' checkout label to 'Contact Information'
    function wc_billing_field_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
    case 'Billing & Shipping details' :
    $translated_text = __( 'Shipping Details', 'woocommerce' );
    break;
    }
    return $translated_text;
    }
    add_filter( 'gettext', 'wc_billing_field_strings', 20, 3 );

    Like this? I’m not sure it’s correct

    • This reply was modified 2 years ago by yarintosh.
    Plugin Support Rynald0s.a11n

    (@rynald0s)

    Automattic Happiness Engineer

    Hi @yarintosh!

    Like so:

    function wc_billing_field_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
    case 'Billing & Shipping' :
    $translated_text = __( 'Shipping Details', 'woocommerce' );
    break;
    }
    return $translated_text;
    }
    add_filter( 'gettext', 'wc_billing_field_strings', 20, 3 );

    Cheers!

    Thread Starter yarintosh

    (@yarintosh)

    Hey, it’s still showing Billing & Shipping instead of Shipping Details

    Plugin Support Rynald0s.a11n

    (@rynald0s)

    Automattic Happiness Engineer

    Hi @yarintosh!

    That code works for me. If it isn’t working on your side, then it might be conflicting with your theme or another plugin.

    Can you tell me how and where exactly you’ve added the code?

    Also, you can change the same text using the free https://wordpress.org/plugins/loco-translate/ plugin. Have you given that a try?

    Cheers!

    Thread Starter yarintosh

    (@yarintosh)

    Pasted it on the functions.php on my childtheme.

    It’s the exact same place I’ve used the previous code for the Defaults to billing address option and it worked.

    Thread Starter yarintosh

    (@yarintosh)

    ??

    Plugin Support Rynald0s.a11n

    (@rynald0s)

    Automattic Happiness Engineer

    Hi @yarintosh!

    I am using this exact code and it works for me:

    //Change the 'Billing details' checkout label to 'Contact Information'
    function wc_billing_field_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
    case 'Billing & Shipping' :
    $translated_text = __( 'It works!', 'woocommerce' );
    break;
    }
    return $translated_text;
    }
    add_filter( 'gettext', 'wc_billing_field_strings', 20, 3 );

    Here is the output:

    https://snipboard.io/nILi0T.jpg

    If that isn’t working for you, then there is some sort of a conflict either from your theme or another plugin, and you will need to work through the troubleshooting steps as per https://docs.woocommerce.com/document/how-to-test-for-conflicts/ or alternatively, use the free Loco translate plugin to make the change.

    Cheers!

    Plugin Support Rynald0s.a11n

    (@rynald0s)

    Automattic Happiness Engineer

    Howdy.

    We haven’t heard back from you in a while, so I’m going to go ahead and mark this thread as resolved. If you have any other questions please start a new thread.

    Cheers!

    Not sure if the OP will see this, but this wasn’t working as posted.

    The code works, but the case wouldn’t match, instead of:

    case 'Billing & Shipping'

    Change it to:

    case 'Billing & Shipping'

    That works fine

    Ah, I’m trying to put in an ampersand ‘& amp;’ but without the space in between. On my last post WordPress converted it to a regular &

    Hi @rynald0s

    I also tried the gettext-Filter and added it in the functions.php – File of my child-theme. But it did not work. Do you have a hint why it does not change the title “Billing details” into “info”? Cheers

    <?php
    function my_child_theme_setup() {
    	load_child_theme_textdomain( 'twentytwentyone', get_stylesheet_directory() . '/languages' );
    }
    add_action( 'after_setup_theme', 'my_child_theme_setup' );
    
    remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20 );
    remove_action( 'woocommerce_before_shop_loop', 'woocommerce_catalog_ordering', 30 );
    
    remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20, 0);
    
    function wc_billing_field_strings( $translated_text, $text, $domain ) {
        switch ( $translated_text ) {
            case 'Billing details' :
                $translated_text = __( 'Info', 'woocommerce' );
                break;
        }
        return $translated_text;
    }
    add_filter( 'gettext', 'wc_billing_field_strings', 20, 3 );
    
    ?>
Viewing 15 replies - 1 through 15 (of 19 total)
  • The topic ‘Change Billing & Shipping title’ is closed to new replies.