If you're building a multilingual WordPress site, you need a multilingual WordPress theme.
You don't necessarily need a theme that has been translated, but you do need a theme that can be translated.
Let me show you how you can find a translatable theme.
If you want to get started quickly, watch the video guide below. This video is taken from the "How to Build Multilingual Sites With WordPress" class on YouTube. Scroll down below the video for the text-and-image tutorial:
Translate WordPress Themes from WordPress.org
Go to WordPress.org and right at the top, click "Themes". The tool we're going to use on this page is called the "Feature Filer":
Look in the center columns called "Features" and check the box at very bottom that says "Translation Ready". Click the "Apply Filters" button.
After you search for "Translation Ready" themes, you'll see all results. You can see there were 2,682 translation-ready themes when I created this tutorial.
Let's dive down and inspect an individual theme. Click the "More Info" text over one of the themes:
It's one thing for a developer to say that their theme is translation-ready but how can you prove it really is?
On the right-hand side of a theme page, click the "Subversion Repository" link:
- You will now see all the different versions of this theme:
- Click to visit the latest version of theme you're looking at. In the image above, that means version 1.0.9.
- Look for the style.css file (every single theme has a style.css).
The one thing we're looking for in this file is always near the top and it's a "text domain" line. In the image belowm the text domain is "type". The content of the "text domain" line doesn't matter. It just needs to be a unique keyword for translatng this theme. If the "text domain" line exists, you're good to go.
I mentioned that the "text domain" line is enough, but I'll show you one more trick to check the quality of your theme. Click on the header.php file and we're going to look for some translation functions.
On this page we're looking for a function reference for a translation function called "underscore E". You can find out more about WordPress translation functions here. That page has a list of all of the translation functions that help you translate WordPress themes. You don't necessarily need to know what they do - you simply need to know that they exist. You just need to know that they're in the code for your theme.
Look in the image below and you can see the "underscore E" function used for the "Skip to content" text. This means that any translated text that has been escaped for safe use. A little further down the page, there's another translation function: esc_attr_e on WordPress.org. You don't necessarily need to know what they're doing the mere fact that they're in the code tells you that the developer is aware of the concept of internationalization and has prepared this theme for it.
More Reading on Multilingual WordPress Topics
You can also check out more WordPress multilingual tutorials from OSTraining:
- How to SEO optimize your multilingual WordPress site
- What are Website Internationalization and Localization?
- How to find and translate WordPress plugins