Intro to MUI and variations in SharePoint 2010

Post on 18-Jun-2015

1.267 views 2 download

Tags:

Transcript of Intro to MUI and variations in SharePoint 2010

#Biwug3011

Intro to MUI and Variations in SharePoint 2010

Presented by Joris Poelmans

#Biwug3011

About the speaker

• Joris.Poelmans@biwug.be• ECM Unit Manager at RealDolmen• Twitter: jopxtwits• Blog: http://jopx.blogspot.com

#Biwug3011

Agenda

Introducing MUI

Playing around with MUI

Variations or MUI or … both

#Biwug3011

Multilingual User Interface (MUI)

• Improvement in SPS2010• Sites can have Alternate Languages• Focus on “Chrome” not on “Content”– Ribbon, navigation, branding

• Language preference is a per user setting• Powered by Language Packs• Site (Web) scoped

#Biwug3011

#Biwug3011

Language Packs

• Two types of Language Packs– Server Language Packs http://

www.microsoft.com/download/en/details.aspx?displaylang=en&id=3411

– Foundation Language Packs http://www.microsoft.com/download/en/details.aspx?id=4731

• Run PSConfig(UI) after all packs are installed

• Installation screens in language of the Language Pack

• For installation on Windows 7 – extract language pack and modify config.xml - http://jopx.blogspot.com/2011/11/how-to-install-sharepoint-server-2010.html

#Biwug3011

Multilingual User Interface (MUI)

• Not all site templates support MUI– E.g. Blog, Meeting workspace– IsMultingual = False

• Use Powershell to enable alternate languages for a complete site collection/web application,

#Biwug3011

#Biwug3011

Agenda

Introducing MUI

Playing around with MUI

Variations or MUI or … both

#Biwug3011

MUI and Managed Metadata• Terms can have Alternate Languages• Edit via Term Store Management• Out of the box import does not support

multiple languages– Use Powershell– Use SharePoint Object Model

#Biwug3011

MUI and Language Selection in the PersonalActions Control

• Switch LCID using Javascript

• Language selection driven by cookie

function ChangeMUI(value){var today = new Date();var oneYear = new Date(today.getTime()+ 365*24*60*60*1000);var url = window.location.href;document.cookie = "lcid=" + value + ";path=/;expires=" + oneYear.toGMTString();window.location.href = url;

}

#Biwug3011

MUI SupportType of Content Examples Supported?

Settings & Help 1. Settings Pages (_layouts, _admin)2. Help3. Images

Supported

Application Content 1. Menus2. Controls3. Custom Actions4. Web (Title, Description, Icon Description)5. List (Title, Description)6. Top Link Bar (Links)7. Quick Launch (Links, Headings)8. Global Breadcrumb9. Local Breadcrumb10. Managed Metadata (Taxonomy)11. Site Content Types (Name, Description, Groups)12. List Content Types (Name, Description)13. Site Columns (Name, Description, Groups)14. List Columns (Name, Description)

Supported

Developer Content 1. Features2. Solutions Supported

User Content 1. Content2. Permission Levels3. Groups4. Views5. OOB Web Part (Title, Appearance)6. Custom Properties7. Search refiners

NOT Supported

#Biwug3011

Some remarks about multilingual & MUI

• No need to install Windows Language Pack – not even for complex Character Sets such as Mid Eastern and East-Asian Languages (pre-RTM advise)

• You cannot enable support for alternate languages on a site that uses customized CSS files.

• Search refiners are “broken” in multilingual scenarios.

#Biwug3011

Agenda

Introducing MUI

Playing around with MUI

Variations or MUI or … both

#Biwug3011

Variations vs MUI

• Multi-lingual User Interfaces (MUI)– Chrome language changes– Content does not change

• Multi-lingual Sites (Variations)– Chrome language changes– Content changes

#Biwug3011

Variations – Core Concepts

• Variations are an infrastructure plumbing feature to enable multi-lingual sites– Enabled via Hidden Lists, Event Receivers, Timer

Jobs– Uses WCM Publishing Features (SharePoint Server

only)

#Biwug3011

Variations Terminology

• Variation Home– Location where Variations are created– Welcome page replaced with VariationRoot.aspx

(VariationRootPageLayout.aspx) upon hierarchy creation• Variation Labels

– Name given to each Variation Site• Variation Root

– Location where content is originally created– Default location in case of no browser match

• Relationships List– Contains tracking information about each page and site in the

variation hierarchy

#Biwug3011

Variations – inner workings

• Used event handlers– ItemAdded, ItemUpdated,ItemCheckedIn,

ItemDeleting and ItemDeleted event on Pages Library

– FeatureActivated, FeatureDeactivating, WebDeleting, WebMoving, WebMoved event on PublishingWeb

See SharePoint Variations – The Complete Guide – Part 3 – Triggers (Blog Stefan Gossner)

#Biwug3011

Variations - Planning

• Design up front• Think about– Language Pack– Hierarchy creation– Navigation impact– Redirection Logic– Impact on search– Translation process

#Biwug3011

Variations and Language Packs

• LPs provide localized Site Templates• NOT a requirement for Variations– Easier for content authors/editors

#Biwug3011

Page Propagation

• Automatic Creation– Automatically propagate site and page variations when site is

created or page is published• Manual Creation

– Manually propagate sites and pages• On-Demand Propagation (New SPS2010)

– “Hybrid” approach allowing automatic site creation with manual page updates

– Requires Powershell (or OM) to enable

#Biwug3011

Propagation UI elements

#Biwug3011

On demand Propagation - PowerShell

#Biwug3011

Variations - Improvements in 2010

• Hierarchy creation– Executes in background with Timer Service (2007

within W3WP.exe process)– Default frequency 1 Hour– 100 work items per timer job execution– Variations Fix Up tool (introduced with 2007 SP2)

• Version differencing– View Changes button

#Biwug3011

Variations – Improvements in 2010

• Flexible Propagation– On-demand propagation– Avoids “overwriting” of target pages

#Biwug3011

Redirection Logic

• VariationRoot.aspx– Redirects based on Browser Language– Typically customized

• Avoid Variations Label Menu Control– Deprecated in SharePoint Server 2010

• Avoid external redirection – confuses Variations redirection

#Biwug3011

Variations - Things to think about

• Plan it carefully• Use a variation Home outside the Site root– Avoids all content being translated

• Implement variation aware web parts– Implement IWebPartVariationUpdate

#Biwug3011