Any good leftist org will make an effort to include everyone, and that includes people who don’t speak English as their first language. If you have some bilingual members, it can seem like a simple matter to just have them translate content as it happens – but it’s complicated. I want to outline here what work is required to enable support for multiple languages only on your WordPress site, but let’s take a quick detour to explain what you would need to do on other platforms and why WordPress can be different.
On Slack, or a similar service like Rocket Chat or Matrix, you will need to create different channels for each language, mirroring your English channels. When creating documents or presentations, you will have to copy the whole thing, and then translate it. Other apps are the same; there is rarely an elegant way to integrate multiple language speakers in similar digital structures, and making copies is the only way. But WordPress is different.
WordPress has been around a very long time, and a lot of other people have faced the issue about making their publication, store, or obscure socialist tech blog available to more than just those who speak their language. As such, there are multiple solutions to solve for this, which I go over here. The short version: for $70 you can have a seamlessly multilingual sit, but it takes some work. I think I’ve had enough experience with WPML (WordPress Multi Language; the plugin we’ll use) to do a basic walkthrough that should cover the most common problems you’ll face.
learning to speak in tounges
The first step in our journey from maladroit monolingual to polyglot professional is to purchase WPML. I know everyone is strapped for cash, and I do my best to find free options, but any multilingual plugin worth bothering with is paid, and WPML is one of the most affordable for the power, versatility, and stability it provides. Purchase it, install it (there are several plugins, and yes, you should install them all), and then open the WPML setup screen.
You’ll be asked to add languages you want to support first. These can be changed at any time, and I recommend starting with one. The language URL format is mostly a cosmetic choice, but once you choose it you should stick with it. For users running WordPress on Cloudron, stick with the “parameter” option. You’ll also need to decide how to handle languages without a translation – for example, someone is browsing your spanish site but clicks a link to a post with no translation. “Skip language” will show the original language and only show languages the article is in in the language switcher.
For example, if your site is mostly in English and you have a handful of Spanish articles, a Spanish speaker clicking on a page that’s only in English will see the page in English and not see the option to swap back to Spaish until they navigate to a page with a Spanish translation. The alternative is to boot users back to the homepage, which I think is more disruptive.
power to the polyglot people
Making sure your users know that your site is multilingual is important, and you have a lot of options for customizing their experience in this way, but here’s some safe defaults if you don’t know what you want to do.
You’ll see three options on where to place your language switcher. I choose to keep mine in a Widget, as you can place Widgets on multiple places on your site. Menus are somewhat similar. If you’re not sure, skip the Menu and Widget language switchers and just make your switcher appear in the footer. You can also choose a custom location, but I only recommend this if you are very technical and you are comfortable editing your theme’s code.
You can also choose to redirect users if their browser language is set to something else. I reccomend leavig this off; while it souds convienient, it can be frustrating for some multilingual users. I think making your langauge switcher prominent is a better solution as it affords users more control over their experience.
I also recocmend turning the Translation Feedback module on. This might help catch embarrasing mistakes, and it’s also a good idea to have contact information in your footer for users who don’t notice the button.
That’s it! Your multilingual plugins is configured and you can start translating.
Man vs machine
I’m going to start with a brief overview of the costs of using WPML’s automatic translation, as anyone with a credit card can translate their site in this way. It’s surprisingly affordable – you get up to 2,000 credits per month free with an active WPML license, and I purchased about $12 worth of credits (21,986 credits) to get a head start my first month. While it’s hard to estimate precisely, 2,000 words is about $7 with DeepL – that’s a handful of blog posts depending on how verbose you are.
While there are cheaper translation engines from Google and Microsoft, multiple people have reported that DeepL is the most accurate. If you really need to pinch pennies, you can use DeepL’s website to translate paragraphs manually and enter them into the editor.