docs/design/language-editor.md
{% embed url="https://youtu.be/example" %}
Video: Using the Language Editor in OpenCart 4
The Language Editor in OpenCart 4 is a powerful tool that allows you to override any text string in your store without modifying the physical language files. This ensures your customizations are "update-safe," meaning they won't be lost when you upgrade OpenCart or your extensions. It's the ideal way to customize branding, improve messaging, or fix translation errors.
The Language Editor list shows all the active translation overrides in your store. From this interface, you can:
{% hint style="info" %} Pro Tip: Overrides are stored in the database. If you want to revert to the original text provided by OpenCart or an extension, simply delete the entry in the Language Editor. {% endhint %}
To change a specific piece of text on your storefront or admin panel, follow these steps:
{% stepper %} {% step %}
{% step %}
common/header for the header).{% step %}
checkout/checkout contains strings for the checkout page.{% hint style="success" %}
Finding the Route: If you're unsure which route contains the text you want to change, look at the URL of the page. For a product page, the route is usually product/product. For the contact page, it's information/contact.
{% endhint %}
Branding & Consistency
Consistent Tone:
Maintenance:
{% hint style="success" %} UX Tip: Small changes like changing "Register Account" to "Join the Club" can significantly impact user engagement and conversion rates. {% endhint %}
</details> <details> <summary><strong>Multi-Language & Multi-Store</strong></summary>Global Management
Localization:
Accuracy:
%s in strings (e.g., Showing %s to %s of %s), as these are replaced by numbers dynamically.{% hint style="info" %} Hreflang & SEO: Changing text via the Language Editor is SEO-friendly as it changes the actual HTML output that search engines crawl. {% endhint %}
</details>{% stepper %} {% step %}
common/language or the specific product route product/product.button_cart.{% step %}
common/header.text_welcome (if applicable to your theme) or similar.{% hint style="danger" %} Critical Warnings
%s, %d, or {variable}. These are required for the system to insert dynamic data.Problem: You saved a translation but the old text still shows.
Diagnostic Steps:
product/product, product/category, and modules).Quick Solutions:
Problem: There are too many keys in the dropdown and you can't find the right one.
Diagnostic Steps:
catalog/language/en-gb/checkout/checkout.php) to see the key name.Quick Solutions:
text_ for labels, button_ for buttons, error_ for errors."The Language Editor is the bridge between a generic store and a personalized brand experience. It gives you total control over your store's voice without touching a single line of code."