After nearly twenty years working with content management systems, I still haven’t found “the one” – the bilingual or multilingual CMS to rule them all. Over the years the complexity and functionality of systems has increased but the perfect multilingual publishing process remains elusive.
To the CMS vendors…here are my top ten features for bilingual systems:
1. Translate (and revert) any content item
It seems self-evident but, if a system claims to support multiple languages, it must be through and through. Pages aren’t enough – we need translatable files, images, videos, forms, emails, the works. Unless all content types are translatable, the CMS is not truly multilingual.
It must also be possible to “restore” any translated item to the original language.
2. Clearly indicate the current language to authors
Authors like to work at speed, and the interface of a good CMS will soon blend into the background. However, when working in two or more languages, it’s critical that the author is aware of the language they are working in at all times. In a complex system where pages may be comprised of many elements which may or may not be translated (yet), and the author may be skipping between content that is and is not translated, it’s all too easy to lose track of which language is currently selected. Content management systems should clearly tell authors which language they are currently editing, preferably making untranslated content read-only until the author indicates that they are ready to translate it.
3. Make languages Languages
The best content management systems treat languages as languages, not “contexts” or “variations”. This is a telltale sign of a CMS that isn’t really multilingual. Ideally the system should have language support baked in from the ground up – it shouldn’t be tacked on as an afterthought.
4. Reporting, notifications and workflow
On a large site, knowing what still needs translating is essential. A system should be able to generate reports detailing the pages that have and have not been translated. It must be able to send notifications to alert staff that a page has been edited and requires updating. It should also have workflow capabilities that can prevent publication until all required languages have been completed, if desired.
5. System-wide string dictionary
A list of reusable strings for templating purposes is essential. The list should be editable within the CMS but also accept an import/export from common localisation file formats. When developers want to print a language string in a template, there should be a straightforward method for doing so.
6. Ability to detect if an item has been translated
Templates must be capable of logic to determine whether a particular item has been translated, whether that be the current item or a related item. This enables developers to handle cases where an item should have been translated but hasn’t (or hasn’t yet).
7. Ability to detect what language is currently being viewed
Similarly, developers need the ability to vary the code generated depending on which language the user is currently viewing. This enables designers to tailor the page design appropriately.
8. Ability to serve languages on different URLs
The system should allow site owners to decide whether to serve different languages on subdomains, subdirectories or different domains altogether.
9. Dynamic links that maintain language scope
It’s fairly standard for content management systems to prevent broken links with dynamic references these days. However, in a multilingual system, the number of URLs for a piece of content is multiplied by the number of languages in use. Systems must be able to provide dynamic links that take the language being viewed into account and don’t inadvertently take the user into a different language scope.
10. Ability to restrict editing to a particular language
Large organisations will often have an in-house translation team and/or a team of external translators. If the team has access to input translations into the CMS directly, it’s preferable if editing rights can be restricted to specific languages. This reduces the risk of human error and gives all authors more confidence in what they are doing.
Bonus: integration with a translation management system
Any multilingual CMS wishlist wouldn’t be complete without a mention of translation management systems. Systems such as PhraseApp, Memsource and SDL Trados dramatically improve the translation process by managing incoming requests, maintaining a translation memory and separating content from presentation. The ideal multilingual CMS has a seamless integration to enable quick and easy translation of content.
So there you have it, my top 10 (11) features for a modern, international content management system. Have I missed any? If so, please tweet me @mrgrahambird