WooCommerce: How to Change “Shipping” Text (and Why You Should!)
So, you’ve got a WooCommerce store up and running, congrats! But something’s nagging you. Maybe the generic “Shipping” text just isn’t cutting it for your brand. Perhaps you offer “Worldwide Delivery” or “Local Pickup.” Whatever the reason, changing that default text is a powerful way to improve your customer experience and brand consistency.
Think of it like this: you’re not just selling products; you’re selling an *experience*. “Shipping” is a functional word, but it’s not particularly exciting. With a little customization, you can turn it into a mini marketing message!
This guide will walk you through several methods to easily change the “Shipping” text in WooCommerce, even if you’re a beginner.
Why Change the “Shipping” Text in WooCommerce?
Before we dive in, let’s reinforce why this is a worthwhile effort:
- Brand Consistency: Using your own terminology reinforces your brand’s unique voice and personality. If you’re a high-end boutique, “Delivery Concierge” sounds much more premium than “Shipping.”
- Clarity & Accuracy: Maybe you offer more than just “Shipping.” Perhaps you have local pickup, in-store delivery, or complex zone-based rates. Custom text can clearly communicate these options. For example, “Free Local Delivery within 10 miles!” is more informative than just “Shipping.”
- Improved User Experience: Clear and descriptive text reduces customer confusion and anxiety during the checkout process. Less confusion means fewer abandoned carts!
- SEO Benefits (indirect): While directly changing “Shipping” text might not dramatically boost your SEO, a well-optimized checkout process with clear information can improve your overall user experience, which indirectly impacts your search ranking.
- Select your language from the “Choose a language” dropdown.
- Under “Choose a location,” select “Custom.” This will save the translation files in a safe location that won’t be overwritten by updates.
- You would search for “Shipping” in Loco Translate.
- In the right-hand field, you’d type “Worldwide Delivery”.
- Save your changes.
Method 1: Using a Translation Plugin (Easy & Recommended)
The easiest and often best way to change text in WooCommerce is by using a translation plugin. WooCommerce is designed to be easily translated, so these plugins leverage that functionality to allow you to customize almost any text string.
Why a plugin? It avoids directly modifying core WooCommerce files, which is risky and can be overwritten during updates. Plugins provide a safer, more manageable way to customize.
Here’s how to do it with the Loco Translate plugin (a popular and free option):
1. Install and Activate Loco Translate: Go to *Plugins > Add New* in your WordPress dashboard, search for “Loco Translate,” and install and activate it.
2. Locate the WooCommerce Translation: In the WordPress dashboard, go to *Loco Translate > Plugins* and find “WooCommerce.”
3. Create a New Translation: Click on “WooCommerce.” You’ll likely need to create a new translation set for your language (e.g., English (US)). Click on the “+ New Translation” button.
4. Choose the Language and Location:
5. Find and Edit the “Shipping” Text: In the translation editor, use the search bar to find the text “Shipping”. You’ll see the original text on the left, and a field on the right where you can enter your custom text.
6. Enter Your Custom Text: Replace “Shipping” with your desired text (e.g., “Delivery”, “Worldwide Shipping”, “Local Pickup Options”).
7. Save Your Changes: Click the “Save” button.
Example:
Let’s say you want to change “Shipping” to “Worldwide Delivery”.
That’s it! The text will now be changed on your WooCommerce site wherever “Shipping” appears, depending on the context.
Method 2: Using a Code Snippet (For More Advanced Users)
If you’re comfortable with code, you can use a code snippet in your `functions.php` file or a code snippets plugin. Warning: Editing `functions.php` directly can break your site. Always back up your site before making changes. Using a code snippets plugin is generally a safer approach.
Here’s the code:
add_filter( 'gettext', 'change_shipping_text', 20, 3 );
function change_shipping_text( $translated_text, $text, $domain ) {
switch ( $translated_text ) {
case ‘Shipping’:
$translated_text = __( ‘Your Custom Shipping Text’, ‘woocommerce’ );
break;
case ‘Shipping Total’:
$translated_text = __( ‘Your Custom Shipping Total Text’, ‘woocommerce’ );
break;
}
return $translated_text;
}
Explanation:
- `add_filter( ‘gettext’, ‘change_shipping_text’, 20, 3 );`: This line tells WordPress to use the `change_shipping_text` function to filter all translatable text (`gettext`).
- `function change_shipping_text( $translated_text, $text, $domain )`: This defines the function that will do the text replacement.
- `switch ( $translated_text )`: This allows you to target specific text strings.
- `case ‘Shipping’:`: This specifies that we want to target the “Shipping” text string.
- `$translated_text = __( ‘Your Custom Shipping Text’, ‘woocommerce’ );`: This replaces the original “Shipping” text with your desired text. Important: Change `”Your Custom Shipping Text”` to your actual desired text. The `__( … , ‘woocommerce’ )` function makes the text translatable, which is good practice.
- `break;`: Stops the switch statement.
- `return $translated_text;`: Returns the translated text.
How to use this code:
1. Choose a Method: Either edit your `functions.php` file (Appearance > Theme Editor > functions.php) or use a code snippets plugin (e.g., “Code Snippets”).
2. Add the Code: Copy and paste the code above into your chosen method.
3. Customize the Text: Crucially, change `”Your Custom Shipping Text”` to your desired text. For example, `”Speedy Delivery”` or `”Local Pick-Up Available”`
4. Save Your Changes: Click “Update File” (in `functions.php`) or “Save Changes and Activate” (in a code snippets plugin).
5. Test: Clear your cache and refresh your WooCommerce checkout page to see the changes.
Example:
If you wanted to change “Shipping” to “Delivery Options”, the code would look like this:
add_filter( 'gettext', 'change_shipping_text', 20, 3 );
function change_shipping_text( $translated_text, $text, $domain ) {
switch ( $translated_text ) {
case ‘Shipping’:
$translated_text = __( ‘Delivery Options’, ‘woocommerce’ );
break;
case ‘Shipping Total’:
$translated_text = __( ‘Delivery Options Total’, ‘woocommerce’ );
break;
}
return $translated_text;
}
Important Considerations for the Code Snippet Method:
- Caching: Remember to clear your website cache after adding or modifying the code.
- Theme Updates: If you’ve directly edited your theme’s `functions.php` file, be aware that theme updates might overwrite your changes. Use a child theme to prevent this.
- Context: The `gettext` filter affects *all* instances of the text “Shipping.” If you need more targeted control (e.g., changing it only on the cart page), you’ll need more complex code.
- `Shipping Total`: The above code also include changing “Shipping Total” text too, in similar fashion.
Method 3: CSS (Limited Use Case)
This is a less common method, and it only *hides* the original text and *displays* new text using CSS. It doesn’t actually change the underlying text, so it’s not ideal for accessibility or SEO. However, it can be a quick fix for simple visual changes.
How it works:
You’ll use CSS to hide the original “Shipping” text and then use the `::before` or `::after` pseudo-element to add your custom text.
Example CSS (Add this to your theme’s custom CSS or a custom CSS plugin):
/* This targets the shipping method label – adjust the selector as needed */
.woocommerce-shipping-methods label:before {
content: “Your Custom Shipping Text: “; /* Replace with your desired text */
display: inline; /* or block, depending on your layout */
}
.woocommerce-shipping-methods label {
display: none; /* Hide the original label */
}
Limitations:
- Accessibility: Screen readers might not read the CSS-generated text correctly.
- SEO: Search engines won’t see the CSS-generated text.
- Maintenance: CSS selectors can break with theme updates.
Recommendation: Avoid this method if possible and use a translation plugin or code snippet instead.
Which Method Should You Choose?
- Beginner: Use a translation plugin (Loco Translate is a great option). It’s the easiest and safest method.
- Intermediate: If you’re comfortable with code and understand the risks, use a code snippet. This gives you more control.
- Advanced (and desperate): Use CSS only as a last resort for quick visual tweaks, and be aware of the limitations.
No matter which method you choose, remember to always test your changes thoroughly to ensure they’re working correctly and don’t break your website. Good luck customizing your WooCommerce store!