Products.LinguaPlone is the multilingual/translation solution for Plone, and achieves this by being as transparent as possible and by minimizing the impact for existing applications and Plone itself.
It utilizes the Archetypes reference engine to do the translation, and all content is left intact both on install and uninstall - thus, it will not disrupt your content structure in any way. It also works with WebDAV and FTP.
LinguaPlone doesn't require a particular hierarchy of content, and will work with any layout of your content space.
Some benefits of LinguaPlone
* Totally transparent, install-and-go.
* Each translation is a discrete object, and can be workflowed individually.
* This also means that it works with WebDAV and FTP.
* Translations are kept track of using AT references.
* You can multilingual-enable your types without affecting their operation outside LinguaPlone.
* Even if you uninstall LinguaPlone after adding multilingual content, all your content will be intact and will work as separate objects! The only thing that will be inactive is the references between the objects. If you re-install it, they will be back. It's very non-intrusive.
* Supporting multilingual capabilities is a 4 (!) line addition to your Archetypes class, and does not alter the functionality of the class when used outside LinguaPlone.
* Fully integrated with ATContentTypes, so the basic content types are translatable.
* Supports language-independent fields (example: dates, first/last names) for fields you want to be the same across translations, and updated in all languages if one of them changes.
* Uses the notion of canonical versions, so you can do interesting things with workflow, like invalidate all translations of a document when the master copy has changed.
Installation
If you are upgrading LinguaPlone there may be an upgrade step that you need to do. Please check the 'Add-ons' control panel for this.
Product's homepage
Requirements:
· Python
· Plone CMS
What's New in This Release: [ read full changelog ]
· Fix regression from the plone site root change. When accessing the zope root using the ZMI getSite returns empty, so fall back to traversing. [pjstevns]
· Add a better way in getting plone site root. A change in Archetypes setting the creation date by a subscriber breaks the old way, because traversing wasn't avaliable in such an early state. [hoka]
· Add a viewlet to mark the translated content as suggested by Google at http://googlewebmastercentral.blogspot.com.es/2011/12/new-markup-for-multilingual-content.html [erral]
· Update bootstrap.py for zc.buildout 1.5.0. [pjstevns]
· Deal with broken translations, esp. when the content's language doesn't match the parent's language. [pjstevns]
· Fixed getting deletable languages if a language has been disabled and content has been translated in this language. [kroman0]
· Added option to disable left portlets in translation view. [pingviini]
· Fixed translation view to actually hide portlets when configured to do so. [pingviini]
· Display the translation of the folder default page in the current language if available. [pjstevns]
· Check if the forward transition exists before taking it [giacomos]
· Fixed preview of "renderable" fields that are not simply text/html (like text/x-rst). [keul]
· Adjust behavior to current BaseObject by using check_auto_id=True in processFormto not force rename_after_creation. This fix plone.api.content.create use when you have linguaPlone and you dont set id [toutpt]