SharePoint 2010 & Variations : Comment connaitre les variations de mes pages ?
/ 
Certes, le moteur de variation de SharePoint 2010 est riche de nouvelle fonctionnalité avec ses nouveaux timers jobs, son mode manuel et semi auto, il fait presque tout
La navigation multilingue ne concerne pas juste la navigation entre différentes langue d’un site mais aussi la navigation entre les différentes variations de la même page.
Pratique, pour finaliser une navigation contextualisée, des pieds de pages paramétrables ou autres sujets très sensible en multilingue ! Surtout avec le nouveau mode manuel et non automatique, ou certaines pages n’ont que certaines variations …
Soit trouver la version FR de http://monsite/US/Team/pages/welcome.aspx qui devrait être http://monsite/fr/equipe/pages/bienvenue.aspx
A noté, pour rappel !
Donc pour continuer sur le sujet, Comment retrouver sa navigation entre page (voir en créer une “sur mesure”)
Plusieurs approches
- Roots de chez roots
- vous pouvez naviguer et chercher directement dans la liste de management des urls, la fameuse liste cachée : /Relationships%20List/ se trouvant en racine
- la vous pouvez requêter sur les id de pages et faire la corrélation avec les ID de vos page
- Utiliser l’OM de Microsoft.SharePoint.Publishing (+1)
- Plus simple, mais il faut connaitre les quelques propriétés intéressantes à utiliser
- Surtout, vous construire un helper pour des méthodes plus simple d’accés : exemple
- Sinon :
if (PublishingPage.IsPublishingPage(SPContext.Current.ListItem))
{
PublishingPage page = PublishingPage.GetPublishingPage(SPContext.Current.ListItem);
StringCollection peerUrls = page.VariationPageUrls;
foreach (var peerUrl in peerUrls)
{
}
}
}
- Pour retrouver la variantes dans une langue précise : PublishingPage.GetVariation
- il vous suffit de passer en paramètre le label qui vous intéresse
- “Pages” en anglais, c’est “Pages” mais en Allemand, c’est “Seiten”
Conclusion
2 leçons à retenir :
- SharePoint est toujours aussi riche : il faut vraiment explorer l’OM pour trouver les bonnes méthodes mais souvent, elles sont logiques …
- SharePoint s’utilise lui même pour sa propre gestion : PropertieBag, Reference list, …
Cependant, même si l’utilisation de l’OM, la version “roots” par exploration de sa propre liste de référence n’est pas à négliger !!!
Pourquoi ?
hum hum, disons que de temps à autre, elle peut être la seule alternative à des soucis de contexte non prévus par Microsoft
Genre : développez des Event Receivers sur vos bibliothèques de publishing
>>> http://www.akshaykoul.com/blog/Home/tabid/40/EntryId/17/Variation-Labels-for-a-site-collection.aspx
Soit la leçon 3 : toujours comprendre comme SharePoint fonctionne en interne !
Bon courage / Good luck / Viel Glück
Renaud Comte aka TheMit ( pas de soucis, juste trop de solution)
Member of WygTeam
http://www.wygwam.com
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :