Thursday, July 03, 2008 by Niels Hartvig

When doing multi-lingual sites with umbraco, you often have each language as a root node. That's the recommended approach and how umbraco is designed, based on the assumption that most multi-lingual sites (95%+) don't share the same content structure. A site in a new language is often a site for a new market, which means different way of communicating and maybe even variants in the products/services you want to promote.

When we design the features of the umbraco core, we always design for the majority while making sure that the minority can extend. That way the core doesn't get bloated; the UI stays simple which is a benefit for the most which is how everything should be designed. Conventions over configuration.

Those few where umbraco seems like a perfect fit except a little detail can enjoy the richness of the umbraco extensibility – that umbraco is designed in an open way with great possibilities of customizing without modifying the core.

That’s what umbraco Certified Developer Torleik Ravn from the Danish company Kraftvaerk did for a client. They needed multi-lingual 1:1 sites and he wanted to use umbraco. Not problem due to the framework nature of umbraco and in the spirit of openness he wrote a great tutorial in the book section.

Hopefully the great work of Torleik will inspire others. Sharing your work and knowledge is a great way to contribute to the umbraco project and is as valuable as a strong, well-defined core.

12 comment(s) for “Multilingual 1-1 sites - keeping features low”

  1. Gravatar ImageNeil Says:

    Excellent tutorial.

  2. Gravatar ImageDirk Says:

    Great book you've written. Big thanks!

    Greetz,
    /Dirk

  3. Gravatar ImagePetr Snobelt Says:

    If umbraco can have subtabs on tab, it can be more intuitive and information can be divided into separate sub tabs. There can be main tabs - language tabs and under each subtab (content, pictures etc.)
    Maybe for v4 ?

    I'm not sure, but now 2 richtextboxes on same tab can cause troubles.

  4. Gravatar ImageHartvig Says:

    @Petr: Tabs in tabs - not a chance. That would encourage to build complex structures on a node, where the content that should be edited is hidden (inside a tab inside a tab). Umbraco 4 is also feature locked.

  5. Gravatar ImagePetr Snobelt Says:

    From my point of view it is small modification - add parent property to tab. :-)

    It also can be great for permission control. You can have 2 main tabs - content and settings and set permission on each.

  6. Gravatar ImageNiels Hartvig Says:

    @Petr: Small technically modification. Big conceptual change. A bad chance. Never gonna happen.

  7. Gravatar ImageJulien Decaudin Says:

    Thanks a lot for this very good tutorial. I should use this method in few weeks for a Chinese website required several different Chinese dialects... Should be fun!

  8. Gravatar ImageJan Skovgaard Says:

    @Niels: Are there any plans on making it possible for document types inheritance in the same way as there is with the templates? Where one can define a master-template and then inherit that template on other templates...

    I am asking because I find it a bit time consuming to define the same tabs on different document types sometimes.

    If one for instance has a SEO tab that needs to be defined for two different, or more, document types it would be nice if one could just create one documenttype called SEO and inherit it on those document types where they are needed.

    Or how i your view on this subject?

    I hope it all makes sense :)

    PS: Oh and just one more question would it be possible to sort the tab-order in v4?

    And sorry for being off-topic.

  9. Gravatar ImagePetr Snobelt Says:

    @Niels: I don't think it is change, it think about it as an option.

    But you are lead developer and I respect this.
    BTW : When I need this I can download sources and do it myself :-)

  10. Gravatar ImageIsmail Mayat Says:

    Excellent tutorial. The only 2 issues i see are

    1. Cannot have multiple richtext edit fields in same tab ( think this issue is in codeplex )

    2. If you wanted granular security for the different languages ie Joe Blogs only has access to english and Jose Bloges has access only to spanish you cannot put security on tabs you can on nodes.

    Still excellent book and will be keeping it in mind for any multilingual stuff i end up doing.

  11. Gravatar ImageSjors Pals Says:

    Nice Tutorial, its almost same way i did an implementation for a internation bank in Mediasurface (puke!).

    In that case it was even more complex since there where countries and languages (ie belgium: Dutch/French). So countries had the same structure, but different countries could have diverent content. In the backend we did filter the tabs so only tabs for that countrie where swown. One big problem we found was that the search index was getting cluttered. So all the results had to be filtered on language which made it very slow.

    Another consideration is that if a company is expanding, to another country, you need to extend all the document types and enter the data.

    As you see internationalisation is one of the biggest problems in CMS's. I am currently working on a tridion project for Matinair. Tridion is maybe not one of the most friendly of the content management systems, but i can say that it handles multilangual functionallity really ellegant.

  12. Gravatar ImageLefteris Says:

    By using the same urls for different languages, this is a bad practice.

Leave comment:

Comments are disabled for older posts