First Steps - Multi Language Page URLs

Hi Guys. I’m just taking my first steps with Django CMS and Python.

I would like to publish my website in several languages. My URL structure now looks like this after the installation: domain/english-article/ domain/spanish-article/.

But I want to change it to: domain/english-article/ domain/es/spanish-article/. So just add a language specific directory for every language (not for english).

Since I’m still completely new to Python, I first solved it in such a way that I simply use Overwrite URL in the Advanced Page Settings and enter the language-specific folder together with the slug, i.e. /es/spanish-article.

Would you say that is a good way to solve this problem? Or is it more of a workaround? How could I solve it differently, better? That /es/ /de/ is automatically placed in front of the slug for every language version of an article.

Thank you so much.

1 Like

When you install Django CMS using the Installer in Wizard Mode, there is an option for multi language support. You can also activate it manually after installation. When you activate it, Django CMS will handle the language prefix slug for you.
So for instance when you create a page, there will be a tab for each language you activated. You can first create the page in english and then you can create the spanish version and so on. It works the same way for blog articles and other language specific content.

I would very much advice against your workaround. It mimics a feature that is built in in a way that is obfuscating.

2 Likes