BIWUG on SharePoint 2010 Multilingual Solutions (Variations) Deep Dive
-
Upload
biwug -
Category
Technology
-
view
934 -
download
3
Transcript of BIWUG on SharePoint 2010 Multilingual Solutions (Variations) Deep Dive
SharePoint 2010 Variations InternalsPascal Benois, Premier Field EngineerJim Bienstman, Premier Field Engineer
Variations are not for multilingual sites only.
SharePoint Variations :the idea behindMultilingual sites
Multiple Devices
Coordinating Content Creation and Update
Accuracy of Content
Session Agenda
Variations Fundamentals
The Hierarchy
Customization
TroubleshootingTroubleshooting
Customization
HierarchyFundamentals
Terminology.
Terminology
Variation Hierarchy
Variation Root Site
Variation Labels
Terminology
Variation Top Site
Variation Pages
Page Variants
Terminology
Variation Group
Relationships List
Where are the settings stored ?Property bag of root site of site collectionProperty bag of root folder of root site of site collectionProperty bag of root folder of Relationships ListList Items in Relationships ListList Items in Variation Labels ListProperty bag of sites in the Variation HierarchyFields of pages in the Variation Hierarchy
Variation Triggers
ItemAdded event on Pages LibraryUsed to restore and update relationships list entries in case that a publishing page was restored from the recycle bin.
ItemUpdated event on Pages LibraryUsed to trigger the peer page creation and peer page update if automatic content creation and propagation is enabled for Pages libraries which have minor versions and/or content moderation enabled.
ItemCheckedIn event on Pages LibraryUsed to trigger the peer page creation and peer page update if automatic content creation and propagation is enabled for Pages libraries which have minor versions and content moderation disabled.
ItemDeleting event on Pages LibraryUsed to collect the variation group id information from a publishing page which is about to be deleted to make it available in the ItemDeleted event firing after the delete operation.
Variation Triggers
ItemDeleted event on Pages LibraryUsed to update the relationships list entries for deleted and recycled publishing pages.
If a publishing page which resided in the source variation label is deleted or recycled then all relationships list entries referencing the variation group of the deleted/recycled page are recycled as well.
If a publishing page which resided in a target variation label was deleted or recycled then its relationships list entry is marked as deleted by setting the value of the "Deleted" column of the relationships list entry to "Yes".
In case of a restore of such a page from the recycle bin, these actions have to be reverted.
FeatureActivated event on PublishingWebUsed to trigger source site variation to target labels when the Publishing feature is activated on a site. This happens as well when a new Publishing site is provisioned or if the feature is manually activated on a site.
Variation Triggers
FeatureDeactivating event on PublishingWebUsed to delete the relationship list entry and the variation specific properties when deactivating the publishing feature on a site.
WebDeleting event on PublishingWebUsed to cancel a delete operation in case that the site being deleted is the variation root site (if spawned labels exist) or a Variation Top site. In addition, the variation system uses this event to clean up the relationship list items for the deleted site and its pages.
WebMoving event on PublishingWebUsed to cancel the move operation in case that the site being moved is a variation top site, as moving a Variation Top site would destroy the variation label it belongs to.
WebMoved event on PublishingWebUsed to trigger source site variation to target labels if a site is moved from outside into the source variation hierarchy. In addition, it will maintain the information in the relationship list in case that a site is moved out of a variation label.
Variations Timer Jobs
Variations Create Hierarchies Job Definition
Variations Create Page Job Definition
Variations Create Site Job Definition
Variations Timer Jobs
Variations Propagate Page Job Definition
Variations Propagate Site Job Definition
WSS timerjob framework
SPJobDefinition
SPPausableJobDefinition
SPWorkItemJobDefinition
Variation Timer Jobs FrameworkAll variation timer jobs implement the SPWorkItemDefinition class
The bad…
SharePoint 2010 does not provide any variation specific powershell CmdLets
Not possible to create variation labels in a supported way programmatically
Variation Root Concepts
Variation Root Site
Pages LibraryWelcome Page
default.aspx
VariationRoot.aspx
Page Layout
VariationRootPageLayout.aspx
VariationRootLanding.ascx
Customization.
Customizing the Variation Root logicDirectly edit the VariationsRootLanding.ascx
Use a copy of the VariationsRootLanding.ascx
Move logic directly into the VariationRootPageLayout.aspx
Copy VariationsRootLanding.ascxBenefit: • Easy update by editing the file on the
file system• Each site collection can have a different
logic
Caveats:• Changes have to be done on all WFEs• VariationRootPageLayout.aspx has to be
update to change the reference to the user control
Edit the VariationsRootLanding.ascxBenefit: • Quickest way to edit the logic
Caveats:• All site collections in the farm will use
the same logic • Changes have to be done on all WFEs
Move logic directly into VariationRootPageLayout.aspxBenefit: • Only one place to adjust the logic
Caveats:• Web.config has to be modified to allow
inline code• Changes to the logic require SharePoint
designer or similar methods
Optional additional steps
Move logic into custom assembly
Deploy using a solution into the GAC
Logic can be referenced from user control or page layout without allowing inline code
Customization: questions
How is the variation labels menu integrated into the master page?
Which page layout is used for the VariationRoot.aspx?
How can you configure a specific logic for the variation root landing page for just one single site collection?
Troubleshooting.
Common type of problems
Variation Hierarchy is not created
Automatic Page/Site propagation does not work
Manual Page/Site propagation does not work
Common type of problems
Variation Label menu does not show correct results
Variation landing page redirection does not work correctly
Troubleshooting propagation issuesIsolate if worker process or timerjob
Troubleshoot propagation problems in variation timerjobs
Troubleshooting propagation problems in the worker process
Troubleshooting Variation Label Menu
The variation labels menu never shows up
The variation labels menu does not show links to all existing peers
Routing problems
• Variation label definition• Relationship between variation peers• Permissions• Browser configuration • Logic of the landing page
ULS logs
Content Deployment and Migration API (PRIME)SharePoint Foundation\Content MigrationSharePoint Foundation\Topology
Variations FeatureWeb Content Management\Site ManagementWeb Content Management\PublishingWeb Content Management\Publishing Provisioning
Multilingual sites
Multiple Devices
Coordinating Content Creation and Update
Accuracy of Content
SharePoint Variations :the idea behind
Variations are not for multilingual sites only.
Some challenges ?
Where are configuration settings stored ?Which events trigger the creation of peer pages ?Which is the most important ULS log category for variation related issues ?How is the variation labels menu integrated into the master page ?Which page layout is used for the VariationRoot.aspx ?How can you configure a specific logic for the variation root landing page for just one single site collection ?
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
http://www.microsoft.be/careers/