SlideShare a Scribd company logo
1 of 37
SharePoint 2010Web Content Management The Developer Story
2
Agenda WCM Challenges in the past WCM the 2010 way Not-so-out-of-the-box stuff Tips’N’Tricks 3
4      Anonymous Enabled
Customers’ challenges ,[object Object]
Confusing User Experience
No support for media
Expensive!5
MOSS 2007 WCM developer challenges ,[object Object]
Legacy HTML implementation
No control over HTML
Markup: mine vs. theirs6
“Where should I begin?” 7
“...and then SharePoint became the center of the universe...” 8
Good News Everything you learned applies! SharePoint Server 2010 For Internet Sites Standard 9
If you are content editor Great User Experience Rich authoring Ribbon Rich Text Editor Fluent UI Live preview Web Parts in content Multilingual UI Cross-browser! Support for Assets & Rich Media Managed Metadata Web Analytics 10
11 SharePoint Server 2010 Rich Editing Experience
If you are developer Cleaner markup Highly extensible UI Improved Content Query Web Part Support for Silverlight Support for AJAX New theming engine 12
Content Query Web Part 2010 Slots Content-to-content Renders div’s by default Still no paging at least not out of the box ;-) 13
14 Content Query Web Part new capabilities
Thenot-so-out-of-the-boxstuff 15
CKS:DEV What’s there for Publishing: Import Content Type Create Page Layout Explore Publishing Pages Explore Master Pages Gallery Explore Style Library Coming soon: Export Publishing Page Cancel Adding SharePoint Items Activate Selected Features …and more Set of SharePoint productivity tools for developers Fully integrated with Visual Studio 2010 SharePoint Developer Tools Free & Open source Community driven Get it now from http://blog.mastykarz.nl/go/diwug-1 16
17 CKS:DEV features for WCM solutions
SubclassedContent Query Web Part New functionality Support for Paging Custom XSLT parameters and functions EXSLT Calling into SharePoint Object Model Easy access to hidden properties Setting custom XSLT Overriding Query Toggling Cache More info:http://blog.mastykarz.nl/go/diwug-2 18
19 CQWP show off: Cool Pager with Mavention Content Query Web Part
10 SharePoint WCM Tips’N’Tricks 20
Tip #1: Be careful what you promise Well-formed XHTML vs. Valid XHTML CQWP vs. Managed Metadata No more support for IE6! Custom vs. out-of-the-box Out of the box: solid foundation Still lots of partner opportunity 21
Tip #2: UseSimpleRendering SharePoint 2007 menu as tables UseSimpleRendering New property on the SharePoint 2010 menu control Renders menu as a nested unordered list <SharePoint:AspMenuUseSimpleRendering="true"runat="server"/> 22
Tip #3: Make branding available in RTE RichHtmlField attributes StyleSheet – point to your CSS file PrefixStyleSheet – create custom prefix to suppress standard branding Doesn’t work with CEWP! <PublishingWebControls:RichHtmlFieldFieldName="PublishingPageContent“StyleSheet="<% $SPUrl:~sitecollection/Style Library/CSS/styles.css %>"PrefixStyleSheet="m-“HasInitialFocus="True“MinimumEditHeight="400px"DisableInputFieldLabel="true"runat="server"></PublishingWebControls:RichHtmlField> 23
Tip #4: Test anonymous ASAP Same as in MOSS 2007 but now even more important Requires extra attention SharePoint LINQ Silverlight OM Hierarchical titles http://blog.mastykarz.nl/go/diwug-4 Body ID’s http://blog.mastykarz.nl/go/diwug-5 24
Tip #5: Unlock Client OM for anonymous $wa = Get-SPWebApplication -Identity "http://diwug" $wa.ClientCallableSettings.AnonymousRestrictedTypes.Remove([Microsoft.SharePoint.SPList], "GetItems") $wa.Update() Keep in mind: Decreases security! More info:http://blog.mastykarz.nl/go/diwug-3 25
Tip #6: Mind new inheritance model In SharePoint 2007 <FieldRefs /> to inherit all fields In SharePoint 2010 Inherits=“TRUE” FieldRefs not requiredanymore 26
Tip #7: Use conditional content Leverage conditional controls to optimize page output Use conditional processing instead of conditional rendering More info:http://blog.mastykarz.nl/go/diwug-6 27
Tip #8: Set the defaults DefaultPageLayout: new in SharePoint Server 2010 Publishing Feature Configures the default Page Layout used for one-click creating new Publishing Pages <WebFeatures> <FeatureID="22A9EF51-737B-4ff2-9346-694633FE4416"> <PropertyKey="DefaultPageLayout"Value="~SiteCollection/_catalogs/masterpage/MyLayout.aspx"/> </Feature> </WebFeatures> Tip: Want to create pages even faster?http://blog.mastykarz.nl/go/diwug-7 28
Tip #9: Control your CSS Introduced in SharePoint 2007 Allows you to register CSS file New in SharePoint 2010: After property Allows you to load your CSS after some other CSS <SharePoint:CssRegistrationname="<% $SPUrl:~sitecollection/Style Library/myStyles.css %>"After="corev4.css"runat="server"/> 29
Tip #10: Disable SharePoint Designer Not needed in production for Internet-facing websites Disabling finally supported! Configurable per: Web Application Site Collection 30
Tip #11: Don’t use Pages in code In MOSS 2007 Title depends on locale (Pages/Pagina’s/Seiten) Same URL (Pages) Except for German: Seiten In SharePoint Server 2010 “fixed” Both title and URL depend on locale Retrieve dynamically In code: PublishingWeb.DefaultPagesListName In XML: $Resources:osrvcore,List_Pages_UrlName; <PropertyKey="SearchCenterUrl"Value="~SiteCollection/nl/Search/$Resources:osrvcore,List_Pages_UrlName;"/> 31

More Related Content

What's hot

What's hot (20)

Mvc summary
Mvc summaryMvc summary
Mvc summary
 
SharePoint Framework
SharePoint FrameworkSharePoint Framework
SharePoint Framework
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 
Single page applications & SharePoint
Single page applications & SharePointSingle page applications & SharePoint
Single page applications & SharePoint
 
Webhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineWebhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint Online
 
Asp.net mvc basic introduction
Asp.net mvc basic introductionAsp.net mvc basic introduction
Asp.net mvc basic introduction
 
Scaling Wordpress
Scaling WordpressScaling Wordpress
Scaling Wordpress
 
TDD with ASP.NET MVC 1.0
TDD with ASP.NET MVC 1.0TDD with ASP.NET MVC 1.0
TDD with ASP.NET MVC 1.0
 
Mvc framework
Mvc frameworkMvc framework
Mvc framework
 
Asp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin SawantAsp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin Sawant
 
single page application
single page applicationsingle page application
single page application
 
Mvc
MvcMvc
Mvc
 
Building productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphBuilding productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft Graph
 
Chris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developers
 
Building a MVC eCommerce Site in Under 5 Minutes
Building a MVC eCommerce Site in Under 5 MinutesBuilding a MVC eCommerce Site in Under 5 Minutes
Building a MVC eCommerce Site in Under 5 Minutes
 
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...
 
SharePoint Framework, React and Office UI SPS Paris 2016 - d01
SharePoint Framework, React and Office UI SPS Paris 2016 - d01SharePoint Framework, React and Office UI SPS Paris 2016 - d01
SharePoint Framework, React and Office UI SPS Paris 2016 - d01
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 

Similar to SharePoint 2010 Web Content Management - The Developer Story

Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box TechnologyBringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
joelsef
 
Sharepoint conference 3 - continental
Sharepoint conference 3 - continentalSharepoint conference 3 - continental
Sharepoint conference 3 - continental
MIchael Carey
 

Similar to SharePoint 2010 Web Content Management - The Developer Story (20)

SharePoint Branding Guidance @ SharePoint Saturday Redmond
SharePoint Branding Guidance @ SharePoint Saturday RedmondSharePoint Branding Guidance @ SharePoint Saturday Redmond
SharePoint Branding Guidance @ SharePoint Saturday Redmond
 
Designing SharePoint 2010 for Business
Designing SharePoint 2010 for BusinessDesigning SharePoint 2010 for Business
Designing SharePoint 2010 for Business
 
Becoming a SharePoint Design Ninja
Becoming a SharePoint Design NinjaBecoming a SharePoint Design Ninja
Becoming a SharePoint Design Ninja
 
SharePoint Branding Guidance @ SharePoint Saturday San Diego
SharePoint Branding Guidance @ SharePoint Saturday San DiegoSharePoint Branding Guidance @ SharePoint Saturday San Diego
SharePoint Branding Guidance @ SharePoint Saturday San Diego
 
SharePoint Branding From Start to Finish
SharePoint Branding From Start to FinishSharePoint Branding From Start to Finish
SharePoint Branding From Start to Finish
 
Popping the Hood: How to Create Custom SharePoint Branding by Randy Drisgill ...
Popping the Hood: How to Create Custom SharePoint Branding by Randy Drisgill ...Popping the Hood: How to Create Custom SharePoint Branding by Randy Drisgill ...
Popping the Hood: How to Create Custom SharePoint Branding by Randy Drisgill ...
 
Designing SharePoint 2010 for Business
Designing SharePoint 2010 for BusinessDesigning SharePoint 2010 for Business
Designing SharePoint 2010 for Business
 
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box TechnologyBringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
 
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
 
Continental Airlines 2009 Microsoft SharePoint Conference Presentation
Continental Airlines 2009 Microsoft SharePoint Conference PresentationContinental Airlines 2009 Microsoft SharePoint Conference Presentation
Continental Airlines 2009 Microsoft SharePoint Conference Presentation
 
Branding SharePoint 2013
Branding SharePoint 2013Branding SharePoint 2013
Branding SharePoint 2013
 
Basic html structure
Basic html structureBasic html structure
Basic html structure
 
AUSPC 2011: How we did it: NothingButSharePoint.com
AUSPC 2011: How we did it: NothingButSharePoint.comAUSPC 2011: How we did it: NothingButSharePoint.com
AUSPC 2011: How we did it: NothingButSharePoint.com
 
MongoDB.local Dallas 2019: MongoDB Stitch Tutorial
MongoDB.local Dallas 2019: MongoDB Stitch TutorialMongoDB.local Dallas 2019: MongoDB Stitch Tutorial
MongoDB.local Dallas 2019: MongoDB Stitch Tutorial
 
Understanding the Web Page Layout
Understanding the Web Page LayoutUnderstanding the Web Page Layout
Understanding the Web Page Layout
 
SharePoint Web Content Management - Lessons Learnt/top 5 tips
SharePoint Web Content Management - Lessons Learnt/top 5 tipsSharePoint Web Content Management - Lessons Learnt/top 5 tips
SharePoint Web Content Management - Lessons Learnt/top 5 tips
 
MongoDB.local Seattle 2019: MongoDB Stitch Tutorial
MongoDB.local Seattle 2019: MongoDB Stitch TutorialMongoDB.local Seattle 2019: MongoDB Stitch Tutorial
MongoDB.local Seattle 2019: MongoDB Stitch Tutorial
 
A Beginner's Guide to Client Side Development with Javascript
A Beginner's Guide to Client Side Development with JavascriptA Beginner's Guide to Client Side Development with Javascript
A Beginner's Guide to Client Side Development with Javascript
 
Sharepoint conference 3 - continental
Sharepoint conference 3 - continentalSharepoint conference 3 - continental
Sharepoint conference 3 - continental
 
SharePoint Saturday Houston 2012
SharePoint Saturday Houston 2012SharePoint Saturday Houston 2012
SharePoint Saturday Houston 2012
 

More from Waldek Mastykarz

SPSNL13 - Building intelligent websites with SharePoint 2013
SPSNL13 - Building intelligent websites with SharePoint 2013SPSNL13 - Building intelligent websites with SharePoint 2013
SPSNL13 - Building intelligent websites with SharePoint 2013
Waldek Mastykarz
 

More from Waldek Mastykarz (20)

Setting up development environment for building SharePoint Framework solution...
Setting up development environment for building SharePoint Framework solution...Setting up development environment for building SharePoint Framework solution...
Setting up development environment for building SharePoint Framework solution...
 
Deep-dive building solutions on the SharePoint Framework
Deep-dive building solutions on the SharePoint FrameworkDeep-dive building solutions on the SharePoint Framework
Deep-dive building solutions on the SharePoint Framework
 
Building solutions with the SharePoint Framework - deep-dive
Building solutions with the SharePoint Framework - deep-diveBuilding solutions with the SharePoint Framework - deep-dive
Building solutions with the SharePoint Framework - deep-dive
 
Building solutions with the SharePoint Framework - introduction
Building solutions with the SharePoint Framework - introductionBuilding solutions with the SharePoint Framework - introduction
Building solutions with the SharePoint Framework - introduction
 
Deep Dive building solutions on the SharePoint Framework - SPS Brussels 2016
Deep Dive building solutions on the SharePoint Framework - SPS Brussels 2016Deep Dive building solutions on the SharePoint Framework - SPS Brussels 2016
Deep Dive building solutions on the SharePoint Framework - SPS Brussels 2016
 
SharePoint Framework do's and don'ts
SharePoint Framework do's and don'tsSharePoint Framework do's and don'ts
SharePoint Framework do's and don'ts
 
SPSNL16 - Building Office 365 and SharePoint solutions using modern developer...
SPSNL16 - Building Office 365 and SharePoint solutions using modern developer...SPSNL16 - Building Office 365 and SharePoint solutions using modern developer...
SPSNL16 - Building Office 365 and SharePoint solutions using modern developer...
 
Building Office 365 solutions with React
Building Office 365 solutions with ReactBuilding Office 365 solutions with React
Building Office 365 solutions with React
 
Building contextual experiences with the Office Graph
Building contextual experiences with the Office GraphBuilding contextual experiences with the Office Graph
Building contextual experiences with the Office Graph
 
NextGen Portal for Your Organization
NextGen Portal for Your OrganizationNextGen Portal for Your Organization
NextGen Portal for Your Organization
 
NextGen Portal for Your Organization
NextGen Portal for Your OrganizationNextGen Portal for Your Organization
NextGen Portal for Your Organization
 
Building solutions with the Office Graph (Unity Connect Amsterdam 2015)
Building solutions with the Office Graph (Unity Connect Amsterdam 2015)Building solutions with the Office Graph (Unity Connect Amsterdam 2015)
Building solutions with the Office Graph (Unity Connect Amsterdam 2015)
 
Building contextual experiences with the Office Graph (SPSMUC 15)
Building contextual experiences with the Office Graph (SPSMUC 15)Building contextual experiences with the Office Graph (SPSMUC 15)
Building contextual experiences with the Office Graph (SPSMUC 15)
 
Building solutions with the Office Graph
Building solutions with the Office GraphBuilding solutions with the Office Graph
Building solutions with the Office Graph
 
Optimizing SharePoint 2013 public-facing websites for Internet search engines
Optimizing SharePoint 2013 public-facing websites for Internet search enginesOptimizing SharePoint 2013 public-facing websites for Internet search engines
Optimizing SharePoint 2013 public-facing websites for Internet search engines
 
Building rich search experiences Apps for SharePoint
Building rich search experiences Apps for SharePointBuilding rich search experiences Apps for SharePoint
Building rich search experiences Apps for SharePoint
 
Building solutions with Office Graph
Building solutions with Office GraphBuilding solutions with Office Graph
Building solutions with Office Graph
 
Building solutions with Office Graph - SharePoint Connect 2014 Amsterdam
Building solutions with Office Graph - SharePoint Connect 2014 AmsterdamBuilding solutions with Office Graph - SharePoint Connect 2014 Amsterdam
Building solutions with Office Graph - SharePoint Connect 2014 Amsterdam
 
SharePoint Connections Amsterdam 2013: Real-life building public-facing websi...
SharePoint Connections Amsterdam 2013: Real-life building public-facing websi...SharePoint Connections Amsterdam 2013: Real-life building public-facing websi...
SharePoint Connections Amsterdam 2013: Real-life building public-facing websi...
 
SPSNL13 - Building intelligent websites with SharePoint 2013
SPSNL13 - Building intelligent websites with SharePoint 2013SPSNL13 - Building intelligent websites with SharePoint 2013
SPSNL13 - Building intelligent websites with SharePoint 2013
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

SharePoint 2010 Web Content Management - The Developer Story

  • 1. SharePoint 2010Web Content Management The Developer Story
  • 2. 2
  • 3. Agenda WCM Challenges in the past WCM the 2010 way Not-so-out-of-the-box stuff Tips’N’Tricks 3
  • 4. 4 Anonymous Enabled
  • 5.
  • 9.
  • 12. Markup: mine vs. theirs6
  • 13. “Where should I begin?” 7
  • 14. “...and then SharePoint became the center of the universe...” 8
  • 15. Good News Everything you learned applies! SharePoint Server 2010 For Internet Sites Standard 9
  • 16. If you are content editor Great User Experience Rich authoring Ribbon Rich Text Editor Fluent UI Live preview Web Parts in content Multilingual UI Cross-browser! Support for Assets & Rich Media Managed Metadata Web Analytics 10
  • 17. 11 SharePoint Server 2010 Rich Editing Experience
  • 18. If you are developer Cleaner markup Highly extensible UI Improved Content Query Web Part Support for Silverlight Support for AJAX New theming engine 12
  • 19. Content Query Web Part 2010 Slots Content-to-content Renders div’s by default Still no paging at least not out of the box ;-) 13
  • 20. 14 Content Query Web Part new capabilities
  • 22. CKS:DEV What’s there for Publishing: Import Content Type Create Page Layout Explore Publishing Pages Explore Master Pages Gallery Explore Style Library Coming soon: Export Publishing Page Cancel Adding SharePoint Items Activate Selected Features …and more Set of SharePoint productivity tools for developers Fully integrated with Visual Studio 2010 SharePoint Developer Tools Free & Open source Community driven Get it now from http://blog.mastykarz.nl/go/diwug-1 16
  • 23. 17 CKS:DEV features for WCM solutions
  • 24. SubclassedContent Query Web Part New functionality Support for Paging Custom XSLT parameters and functions EXSLT Calling into SharePoint Object Model Easy access to hidden properties Setting custom XSLT Overriding Query Toggling Cache More info:http://blog.mastykarz.nl/go/diwug-2 18
  • 25. 19 CQWP show off: Cool Pager with Mavention Content Query Web Part
  • 26. 10 SharePoint WCM Tips’N’Tricks 20
  • 27. Tip #1: Be careful what you promise Well-formed XHTML vs. Valid XHTML CQWP vs. Managed Metadata No more support for IE6! Custom vs. out-of-the-box Out of the box: solid foundation Still lots of partner opportunity 21
  • 28. Tip #2: UseSimpleRendering SharePoint 2007 menu as tables UseSimpleRendering New property on the SharePoint 2010 menu control Renders menu as a nested unordered list <SharePoint:AspMenuUseSimpleRendering="true"runat="server"/> 22
  • 29. Tip #3: Make branding available in RTE RichHtmlField attributes StyleSheet – point to your CSS file PrefixStyleSheet – create custom prefix to suppress standard branding Doesn’t work with CEWP! <PublishingWebControls:RichHtmlFieldFieldName="PublishingPageContent“StyleSheet="<% $SPUrl:~sitecollection/Style Library/CSS/styles.css %>"PrefixStyleSheet="m-“HasInitialFocus="True“MinimumEditHeight="400px"DisableInputFieldLabel="true"runat="server"></PublishingWebControls:RichHtmlField> 23
  • 30. Tip #4: Test anonymous ASAP Same as in MOSS 2007 but now even more important Requires extra attention SharePoint LINQ Silverlight OM Hierarchical titles http://blog.mastykarz.nl/go/diwug-4 Body ID’s http://blog.mastykarz.nl/go/diwug-5 24
  • 31. Tip #5: Unlock Client OM for anonymous $wa = Get-SPWebApplication -Identity "http://diwug" $wa.ClientCallableSettings.AnonymousRestrictedTypes.Remove([Microsoft.SharePoint.SPList], "GetItems") $wa.Update() Keep in mind: Decreases security! More info:http://blog.mastykarz.nl/go/diwug-3 25
  • 32. Tip #6: Mind new inheritance model In SharePoint 2007 <FieldRefs /> to inherit all fields In SharePoint 2010 Inherits=“TRUE” FieldRefs not requiredanymore 26
  • 33. Tip #7: Use conditional content Leverage conditional controls to optimize page output Use conditional processing instead of conditional rendering More info:http://blog.mastykarz.nl/go/diwug-6 27
  • 34. Tip #8: Set the defaults DefaultPageLayout: new in SharePoint Server 2010 Publishing Feature Configures the default Page Layout used for one-click creating new Publishing Pages <WebFeatures> <FeatureID="22A9EF51-737B-4ff2-9346-694633FE4416"> <PropertyKey="DefaultPageLayout"Value="~SiteCollection/_catalogs/masterpage/MyLayout.aspx"/> </Feature> </WebFeatures> Tip: Want to create pages even faster?http://blog.mastykarz.nl/go/diwug-7 28
  • 35. Tip #9: Control your CSS Introduced in SharePoint 2007 Allows you to register CSS file New in SharePoint 2010: After property Allows you to load your CSS after some other CSS <SharePoint:CssRegistrationname="<% $SPUrl:~sitecollection/Style Library/myStyles.css %>"After="corev4.css"runat="server"/> 29
  • 36. Tip #10: Disable SharePoint Designer Not needed in production for Internet-facing websites Disabling finally supported! Configurable per: Web Application Site Collection 30
  • 37. Tip #11: Don’t use Pages in code In MOSS 2007 Title depends on locale (Pages/Pagina’s/Seiten) Same URL (Pages) Except for German: Seiten In SharePoint Server 2010 “fixed” Both title and URL depend on locale Retrieve dynamically In code: PublishingWeb.DefaultPagesListName In XML: $Resources:osrvcore,List_Pages_UrlName; <PropertyKey="SearchCenterUrl"Value="~SiteCollection/nl/Search/$Resources:osrvcore,List_Pages_UrlName;"/> 31
  • 38. Tip #12: Disable Presence Supported! No more dodgy JS Per Web Application setting 32
  • 39. Tip #13: Hide Ribbon from anonymous users Conditional processing and Conditional rendering don’t work What you need to do Hide in CSS <Mavention:SecurityTrimmedControlRenderingAuthenticationRestriction=“AnonymousUsersOnly”runat=“server”> <styletype=“text/css”> .ribbonbackground{ display: none; visibility: hidden; } </style> </Mavention:SecurityTrimmedControlRendering> 33
  • 40. Extra tip: Learn your tools Great capabilities Lots of new features New way of thinking It does pay back! 34
  • 41. Key takeaways Many improvements for content editors and developers New capabilities simplify building rich websites Visual Studio 2010 SharePoint Developer Tools are your friend: take your time and learn them Building Internet-facing sites is different: don’t underestimate it 35
  • 42.
  • 43. Resources Waldek Mastykarz – Innovation Matters http://blog.mastykarz.nl Community Kit for SharePoint: Development Tools Edition http://cksdev.codeplex.com SharePoint Developer Center http://msdn.microsoft.com/sharepoint Microsoft SharePoint Team Blog http://blogs.msdn.com/sharepoint Microsoft Enterprise Content Management Team Blog http://blogs.msdn.com/ecm Microsoft SharePoint Designer Team Blog http://blogs.msdn.com/sharepointdesigner 37

Editor's Notes

  1. Wat doe ik? Oplossingen bedenken en ontwikkelen Adviseren Kennis delenExpertise SharePoint 2010 WCM SharePoint 2007 WCM Toegankelijkheid en webstandaarden Development + Application Lifecycle Management SharePointErvaring (1998) 12 jaar webdesign 7 jaar webdevelopment 6 jaar toegankelijkheid 4 jaar SharePoint 2007 1 jaar SharePoint 2010
  2. Ontwikkelen van Internet-facing sites heeft ook een aantal uitdagingen ivm. anonymous access
  3. Ontwikkelaars moeten denken aan veel verschillende aspecten. Soms zie je door de bomen het bos niet meer...
  4. Demo in FirefoxGo to EditingInsert 2x Lorem IpsumLive PreviewInsert Image from ComputerShow contextual Image TabInsert CQWP in text
  5. There are still *some* tables, but mostly divsQ: Waarvoor gebruikt SP2010 tables?
  6. Show DIWUG Item StyleGo to Press ReleasesEdit Web PartChange Item Style to DIWUG: Page Content; Article Date; Article CategoryShow content-to-content Query String (click on category)Click on an articleShow related content: Field value on the current page
  7. Create Content Type in browser
  8. Go to archiveShow and explain the pager
  9. CQWP vs. Managed Metadata- Multivalue only for single list queries- All other single value only!Veel partner opportunityimplementeren van rijke brandingseducatie van gebruikers
  10. Demo in FirebugNightandday.master line 349
  11. It works with CEWP with some JavaScript tweaking
  12. More components in SP2010 = more places things can go wrongRich functionality but it means you have to test it all: not all of it has been used in Internet-facing websites yet
  13. Quiz1. Met hoeveel verschillende acties kan je