Site language settings
You can set site language in code:
# Setup site langauge settings portal = context.getSite() ltool = portal.portal_languages defaultLanguage = 'en' supportedLanguages = ['en','es'] ltool.manage_setLanguageSettings(defaultLanguage, supportedLanguages, setUseCombinedLanguageCodes=False)
For unit testing, you need to run this in afterSetUp() after setting up the languages:
# THIS IS FOR UNIT TESTING ONLY # Normally called by pretraverse hook, # but must be called manually for the unit tests # Goes only for the current request ltool.setLanguageBindings()
On vanilla Plone site (no LinguaPlone installed) using profiles/default/propertiestool.xml:
<object name="portal_properties" meta_type="Plone Properties Tool">
<object name="site_properties" meta_type="Plone Property Sheet">
<property name="default_language" type="string">en</property>
</object>
</object>
On Linguaplone enabled sites, your add-on product can use GenericSetup XML profiles/default/portal_languages.xml
<?xml version="1.0"?> <object> <default_language value="fi"/> <use_path_negotiation value="False"/> <use_cookie_negotiation value="True"/> <use_request_negotiation value="False"/> <use_cctld_negotiation value="False"/> <use_combined_language_codes value="False"/> <display_flags value="True"/> <start_neutral value="False"/> <supported_langs> <element value="en"/> <element value="fi"/> </supported_langs> </object>

Author: