sharepoint 2013 web content management for developers tspug

93
SP 2013 – WCM For Developers Ed Musters, SharePoint MVP Twitter: @TechEdToronto

Upload: ed-musters

Post on 18-Nov-2014

866 views

Category:

Technology


2 download

DESCRIPTION

As presented to the Toronto SharePoint User Group on March 20, 2013. With powerful new content search capabilities, metadata driven navigation, and new features such as design manager and cross site publishing, this presents a paradigm shift for developers with a focus on WCM publishing sites (intranet, internet). These new features and capabilities will be presented at an introductory level during this talk. The session will then focus on your typical Visual Studio “Publishing Solution” in SharePoint 2010. How do you get this running on a SharePoint 2013 Farm “as is” (migration)? What is involved if I want to convert my existing visual studio solution to SP 2013 developer tools and then fully over to the SP 2013 publishing paradigm? We’re already in development of a SharePoint 2010 site - can we deploy SharePoint 2013 now or should we wait? This session will provide insight into how you should develop today, and be ready for the new world that awaits in SharePoint 2013!

TRANSCRIPT

Page 1: SharePoint 2013 Web Content Management for Developers TSPUG

SP 2013 ndash WCM For DevelopersEd Musters SharePoint MVP

Twitter TechEdToronto

Agenda

IntroductionCity of Lethbridge Solution (SP 2010)Full Trust Solution DevelopmentSharePoint App ModelWindows 8 ApplicationConclusionsQuestion and Answer

Topic

Introduction

AboutMe()

httpsmvpsupportmicrosoftcomprofileEdMusters

bull Current SharePoint MVPbull Author for two SP 2010 development booksbull SharePoint Architect for Infusionbull Speaker at International Conferences on

SharePoint at user groups and at SharePoint Saturdays

bull Certified Trainer for the industry leading SharePoint training from Critical Path Training

bull Telerik ldquoInsiderrdquobull Holds all MS certifications for SharePoint

2010

bull Harley-Davidson trade Enthusiast

London Krakoacutew Dubai New York Toronto Boston

6

And yes I do really have a Black Belt

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 2: SharePoint 2013 Web Content Management for Developers TSPUG

Agenda

IntroductionCity of Lethbridge Solution (SP 2010)Full Trust Solution DevelopmentSharePoint App ModelWindows 8 ApplicationConclusionsQuestion and Answer

Topic

Introduction

AboutMe()

httpsmvpsupportmicrosoftcomprofileEdMusters

bull Current SharePoint MVPbull Author for two SP 2010 development booksbull SharePoint Architect for Infusionbull Speaker at International Conferences on

SharePoint at user groups and at SharePoint Saturdays

bull Certified Trainer for the industry leading SharePoint training from Critical Path Training

bull Telerik ldquoInsiderrdquobull Holds all MS certifications for SharePoint

2010

bull Harley-Davidson trade Enthusiast

London Krakoacutew Dubai New York Toronto Boston

6

And yes I do really have a Black Belt

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 3: SharePoint 2013 Web Content Management for Developers TSPUG

Topic

Introduction

AboutMe()

httpsmvpsupportmicrosoftcomprofileEdMusters

bull Current SharePoint MVPbull Author for two SP 2010 development booksbull SharePoint Architect for Infusionbull Speaker at International Conferences on

SharePoint at user groups and at SharePoint Saturdays

bull Certified Trainer for the industry leading SharePoint training from Critical Path Training

bull Telerik ldquoInsiderrdquobull Holds all MS certifications for SharePoint

2010

bull Harley-Davidson trade Enthusiast

London Krakoacutew Dubai New York Toronto Boston

6

And yes I do really have a Black Belt

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 4: SharePoint 2013 Web Content Management for Developers TSPUG

AboutMe()

httpsmvpsupportmicrosoftcomprofileEdMusters

bull Current SharePoint MVPbull Author for two SP 2010 development booksbull SharePoint Architect for Infusionbull Speaker at International Conferences on

SharePoint at user groups and at SharePoint Saturdays

bull Certified Trainer for the industry leading SharePoint training from Critical Path Training

bull Telerik ldquoInsiderrdquobull Holds all MS certifications for SharePoint

2010

bull Harley-Davidson trade Enthusiast

London Krakoacutew Dubai New York Toronto Boston

6

And yes I do really have a Black Belt

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 5: SharePoint 2013 Web Content Management for Developers TSPUG

London Krakoacutew Dubai New York Toronto Boston

6

And yes I do really have a Black Belt

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 6: SharePoint 2013 Web Content Management for Developers TSPUG

6

And yes I do really have a Black Belt

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 7: SharePoint 2013 Web Content Management for Developers TSPUG

Published Books

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 8: SharePoint 2013 Web Content Management for Developers TSPUG

Prize Telerik DevCraft Ultimate Collection

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 9: SharePoint 2013 Web Content Management for Developers TSPUG

Topic

City of LethbridgeSP 2010 Solution

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 10: SharePoint 2013 Web Content Management for Developers TSPUG

TopicFull Trust Solution Development

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 11: SharePoint 2013 Web Content Management for Developers TSPUG

Full Trust Solutions

What are Full Trust Solutionsbull Solution Packages (WSPs) are installed to

SharePoint Serverbull Typically compiled NET code is deployed to GACbull Files are pushed physically to the SharePoint

Root directorybull More limited cloud scenarios via laquo SandBox raquo

solutions

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 12: SharePoint 2013 Web Content Management for Developers TSPUG

Full Trust Solutions

When are they suitablebull If you have an on-premise deployment of SharePointbull You have lots of existing solutions in SP 2007 2010

ndash That is solutions you may want to re-use migrate

bull You are an ASPNET web forms developerbull Can SandBox for cloud solutions (but deprecated)bull Cannot be app ndash such as timer job admin page

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 13: SharePoint 2013 Web Content Management for Developers TSPUG

Full Trust Solution Development

How are they developedbull laquo Traditional raquo development using Visual

Studio Cbull Program against the SharePoint Server

object modelbull Package using VS tools to SharePoint

Solution Packages (WSPs)bull Deploy to Farm typically using PowerShellbull SandBox solutions would be uploaded

activated

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 14: SharePoint 2013 Web Content Management for Developers TSPUG

Solution Packages

bull Solution Packages are sets of functionality deployed to the farm or site collection (sandbox)

bull May contain one or more Features assemblies pages controls and other artifacts

bull SharePoint framework handles installation and configuration of solution items

bull Automated packaging and deployment in Visual Studio 2010

Web Parts

Assemblies

MappedFolders

WSP

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 15: SharePoint 2013 Web Content Management for Developers TSPUG

Features

bull A lsquoFeaturersquo is a defined set of functionality encapsulated within a specific format

bull Features may be comprised of any combination of code including web parts workflows and site definitions

bull Features may be deployed individually or as a part of the solution package

Solution

Feature

XML

ReceiverAssembly

Project Item

Web Part Template Workflow

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 16: SharePoint 2013 Web Content Management for Developers TSPUG

Lethbridge VS 2010 Solution

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 17: SharePoint 2013 Web Content Management for Developers TSPUG

Sample App ndash Footer Links

bull Illustrates a very common development pattern1 Define schema Site Columns and Content Types2 List Provisioned with attached content types3 A Web Part that performs a content query against

the content type SP List

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 18: SharePoint 2013 Web Content Management for Developers TSPUG

Solution Structure and Dependencies

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 19: SharePoint 2013 Web Content Management for Developers TSPUG

Using Existing SP 2010 Solutions

Possible Tobull Deploy Existing Solutionsbull Will deploy to laquo 14 raquo folder in SharePoint 2013bull Add laquo 14 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=140gt

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 20: SharePoint 2013 Web Content Management for Developers TSPUG

Convert VS Solutions from SP 2010

Possible Tobull Open Solution in VS 2012bull Change to latest Framework Versionbull Change SharePoint Referencesbull Add laquo 15 raquo property to manifest

ltSolution xmlns=httpschemasmicrosoftcomsharepoint SolutionId=cae481cb-a094-44ae-8298-ea989344a025 SharePointProductVersion=150gt

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 21: SharePoint 2013 Web Content Management for Developers TSPUG

Convert VS Solutions from SP 2010

My Strongest Recommendationbull Create New VS SP 2013 solutionbull Ensure Package Name is different (eg append

2013)bull Bring in code files from SP 2010bull Ultimately package structure should be identicalbull Ensure feature names and IDs are the same ndash OR

bull Create with new feature IDs

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 22: SharePoint 2013 Web Content Management for Developers TSPUG

SP 2013 Full Trust Solution

bull Deploy as a WSP file (ie solution package)bull Deploy to the Farmbull Suitable for an on-Premises deployment

onlybull Absolutely a supported model for SP 2013bull Very similar to developing full trust

solutions for SharePoint 2010

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 23: SharePoint 2013 Web Content Management for Developers TSPUG

SP 2013 Footer Links Solution

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 24: SharePoint 2013 Web Content Management for Developers TSPUG

Demo

Migrate SP 2010 Code to SP 2013

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 25: SharePoint 2013 Web Content Management for Developers TSPUG

Topic

WCM in SP 2013

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 26: SharePoint 2013 Web Content Management for Developers TSPUG

bull Design Managerbull Image Renditionsbull Device Channelsbull Image Renditionsbull Multilingual

Web Content Management in SP 2013 bull Search Driven Publishing Model

bull Content Search Web Partbull Content Catalogbull Managed Navigationbull Cross Site Publishing

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 27: SharePoint 2013 Web Content Management for Developers TSPUG

Web Content Management in SP 2013

In short the model we use today for publishing sites in SharePoint 2010 is still ldquovalidrdquo as fundamentally publishing works the same way in SharePoint 2013

Deploy solutions to an on-premise farm

Since SharePoint 2013 has a complete ldquo14rdquo folder ndash it should be possible to ldquomigraterdquo SP 2010 sites ldquoas isrdquo to a SharePoint 2013 box and have it run in ldquolegacyrdquo mode

How we do branding in SharePoint 2013 has been completely changed with the introduction of the Design Manager making it dramatically easier to create such as master pages and page layouts

No more custom ldquobranding solutionsrdquo in Visual Studio

A very compelling Search driven publishing model has been added in SP 2013 making it possible to create a publishing site featuring content from multiple site collections

Information Architecture and Site Design become much more interesting

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 28: SharePoint 2013 Web Content Management for Developers TSPUG

The following slides on web content management in SP 2013 courtesy of Microsoft and the SP 2013 Conference

Wanted to give credit where it is due

Acknowledgement

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 29: SharePoint 2013 Web Content Management for Developers TSPUG

Markup Improvements

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 30: SharePoint 2013 Web Content Management for Developers TSPUG

bull No more TABLEs for Web Parts amp Zonesbull Client-side rendering for Content Search Web partbull CSS completely re-written amp simplified

What do you mean ldquoimprovedrdquo

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 31: SharePoint 2013 Web Content Management for Developers TSPUG

How much better is lsquobetterrsquo

SharePointMi-crosoftcom

SP Online Public website

Contoso Electronics Maventionnl0

20

40

60

80

100

120

140

160

138

19 13

W3C HTML Markup Validator Errors

0

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 32: SharePoint 2013 Web Content Management for Developers TSPUG

SharePoint 2013 makes sure search engines give your site the best possible treatment

Great sites are ones that get found

Clean URLs httpwwwccomcars

Home Page Redirects None

Country code top-level domains (ccTLDs)

httpwwwccomcars httpwwwcmxcoches

XML Sitemaps Automatically generated and referenced in robotstxt

SEO Properties Browser title Meta description Meta keywordsCanonical URLs

Webmaster Tools integration Assists with ownership verification

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 33: SharePoint 2013 Web Content Management for Developers TSPUG

Design Manager

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 34: SharePoint 2013 Web Content Management for Developers TSPUG

Web Designer and Developer Experience

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 35: SharePoint 2013 Web Content Management for Developers TSPUG

bull Any web designer amp developer can easily style amp brand an SP2013 Publishing sitebull ldquoUnder-the-hoodrdquo platform investments that make SharePoint a much better WCM rendering platform

Why web designersdevs will love SP2013

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 36: SharePoint 2013 Web Content Management for Developers TSPUG

A look back Designing your web site in SharePoint 2010

CompsCSS JS etc

HTML

Integrate

Ribbon

Master

Pages

Roll-up

contro

ls

Dreamweaver Photoshop etc

SharePoint Designer

NavigationCusto

m Catalo

gCatalog Integration

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 37: SharePoint 2013 Web Content Management for Developers TSPUG

Designing your web site in SharePoint 2013

SharePoint

Dreamweaver etc

bull Ribbon

bull Placeholder Main

bull Minimal Master

bull Navigation

bull Web parts

bull Controls

Auto Conver

t

SnippetGallery

Add controls

UploadCompsCSS JS etc

HTML

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 38: SharePoint 2013 Web Content Management for Developers TSPUG

Mobile Device Targeting

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 39: SharePoint 2013 Web Content Management for Developers TSPUG

Devices Matter

Itrsquos a mobile amp touch-enabled web now

2006 2008 2010 2012 2014 20160

400

800

1200

1600

2000

Global Mobile vs Desk-top Internet User Pro-

jection 2007-2015E by Morgan

Stanley

Mobile Desktop

Inte

rnet

Use

rs (

MM

)

But how do you have a Customized Design

Fewer bytes over the wire

hellip all while maintaining Search Engine Optimization

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 40: SharePoint 2013 Web Content Management for Developers TSPUG

Device Channels

Control experience based on user agent string egMozilla50 (compatible MSIE 100 Windows Phone 80 Trident60 IEMobile100 ARM Touch NOKIA Lumia 920)

1 Differentiated design with separate Master Pages

Eg account for different screen resolutions2 Targeted content with Device Channel

PanelsEg show a special deal to mobile

customers

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 41: SharePoint 2013 Web Content Management for Developers TSPUG

Image Renditions

Multiple sizes aspect ratios and cropshelliphellipbut still just one image

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 42: SharePoint 2013 Web Content Management for Developers TSPUG

Design Packaging

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 43: SharePoint 2013 Web Content Management for Developers TSPUG

The Search Driven Publishing Model

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 44: SharePoint 2013 Web Content Management for Developers TSPUG

Examples of Search Driven Publishing

ldquoWhy wouldnrsquot everything be search drivenrdquo

or in other words

ldquoAre there times we might not use Search Driven Publishing modelrdquo

NewsCommerce

SupportKnowledge

BaseInternetIntranetExtranetMobileArticles

PicturesVideo

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 45: SharePoint 2013 Web Content Management for Developers TSPUG

Advantages of a Search Driven Publishing Model

Breakdown site collection

boundaries

Eliminate large list thresholds

Allows for flexible amp dynamic

publishing

Separate presentation from storage

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 46: SharePoint 2013 Web Content Management for Developers TSPUG

What makes it ldquoSearch Drivenrdquo

Q ldquoDonrsquot most web sites already have SearchrdquoA Yes

ldquoItrsquos not about searching what we have published it about publishing republishing and targeting content that we have crawledhelliprdquo

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 47: SharePoint 2013 Web Content Management for Developers TSPUG

Documents

Pages

Catalogs

Digital Assets

CRAWLER

Index

SharePoint Content

Searc

h

Qu

ery

Ru

les

Reco

mm

en

dati

on

s

Sh

are

Poin

t A

PI

SEO

Managed Nav

Content Query

Content

Search

Publishing Page

Pag

e F

ram

ew

ork

Web

Part

Fra

mew

ork

Publishing

WWW

Data store

External

Term Context

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 48: SharePoint 2013 Web Content Management for Developers TSPUG

What goes into making the Search Driven Publishing Model

Content Search Web

Parts

Display Templates

Query Builder

Query Rules Content Catalogs

Managed Navigation

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 49: SharePoint 2013 Web Content Management for Developers TSPUG

Content Search Web Part

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 50: SharePoint 2013 Web Content Management for Developers TSPUG

AudioCamerasComputersHome appliancesPhonesTV and video

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

AudioCamerasComputersHome appliancesPhonesTV and video

Friendly URLhttpcontosocomcameras

Use pagemaincategoryaspx

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

TERM STORE NAVIGATION TAXONOMY

Filter query byCATEGORY Cameras

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 51: SharePoint 2013 Web Content Management for Developers TSPUG

AudioCamerasComputersHome appliancesPhonesTV and video

TERM STORE NAVIGATION TAXONOMY

Friendly URLhttpcontosocomcomputers

Use pagemaincategoryaspx

Adaptive experiences empower web developers to create portals based on managed navigation and a few dynamic pages

Microsoft Confidential

Search

Product Catalog

CONTENT SEARCH WEB PART

Filter query byCATEGORY Computers

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 52: SharePoint 2013 Web Content Management for Developers TSPUG

Content Search Web Part Content Search Web Parts

CBQ

without

borders

nicely

themed

Indexing

Latency

Simpl

e to

Add Simpl

e to

Edit

Super

Flexibl

e

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 53: SharePoint 2013 Web Content Management for Developers TSPUG

Display Templates

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 54: SharePoint 2013 Web Content Management for Developers TSPUG

Display Templates

Make your own in HTML amp JavaScript

Many ship Out-of the-Box

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 55: SharePoint 2013 Web Content Management for Developers TSPUG

Query Builder

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 56: SharePoint 2013 Web Content Management for Developers TSPUG

Query Builder

IW focusedUI based

Allows ldquoadvanced

moderdquo

Provides Test amp

Preview

Add Refiners

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 57: SharePoint 2013 Web Content Management for Developers TSPUG

Query Rules

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 58: SharePoint 2013 Web Content Management for Developers TSPUG

Query Rules

IW focused

Manipulate Search Results

UI based

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 59: SharePoint 2013 Web Content Management for Developers TSPUG

Adaptive experiences powers flexible consumption and re-use by separating content management and site experience workflows

Combining static and dynamic content through Search

PRODUCT CATALOG JOB OPENINGSASSET LIBRARYARTICLES NAVIGATION

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 60: SharePoint 2013 Web Content Management for Developers TSPUG

Microsoft Confidential

Adaptive experiences empower business users with editorial control to maximize business goals

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 61: SharePoint 2013 Web Content Management for Developers TSPUG

Content Catalog

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 62: SharePoint 2013 Web Content Management for Developers TSPUG

Content Catalogs

Available across Farms

A settings on a List or Library

Integrated with Search

Product Catalog Site

Template

Define URL Format

Select Nav structure

Library

1a Enable

2 Index 3 Connect

1b New

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 63: SharePoint 2013 Web Content Management for Developers TSPUG

Catalog Enabling

Catalog Connection

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 64: SharePoint 2013 Web Content Management for Developers TSPUG

Managed Navigation

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 65: SharePoint 2013 Web Content Management for Developers TSPUG

Managed Navigation

New Nav Provider

Friendly URLSProduct Catalog

integration

Terms can be site

structures

11 binding of Site

Collection to Term Set

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 66: SharePoint 2013 Web Content Management for Developers TSPUG

Cross Site Publishing

Feature

Scenario

Technology

Wizard

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 67: SharePoint 2013 Web Content Management for Developers TSPUG

ldquoCreate content in an Authoring environment and use it in any one of your SharePoint publishing environmentsrdquo

Cross Site Publishing

URL manipulation

Multi-branding

Authoring and

Production tiers

Multilingual

Things to know1 This is not

content deployment

2 Requires the Publishing feature

3 Requires a Catalog

Flexibility in Page Content

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 68: SharePoint 2013 Web Content Management for Developers TSPUG

Cross Site Publishing

Why XSP1 Need to Publish gt1

location2 Need a multilingual site3 Need to separate

authoring and publishing

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 69: SharePoint 2013 Web Content Management for Developers TSPUG

DemoDesign ManagerMigrating your BrandMobile Considerations

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 70: SharePoint 2013 Web Content Management for Developers TSPUG

DemoCross Site PublishingMetadata Navigation

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 71: SharePoint 2013 Web Content Management for Developers TSPUG

Topic

SharePoint App Model

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 72: SharePoint 2013 Web Content Management for Developers TSPUG

SharePoint App Model

Is this not THE new way to develop for SPbull This was all that was talked about at the MS

SharePoint Conferencebull No code is deployed to the SharePoint serversbull You may choose any technoloogy you host itbull Apps are published ndash coporate store or public

marketplacebull Suitable for on-premise or cloud (Office 365)

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 73: SharePoint 2013 Web Content Management for Developers TSPUG

SharePoint App Model

When are Apps suitablebull If your primary purpose is to access data in SharePointbull Your custom solution is a new onebull App is not ASPNET ndash iOS Win 8 Win Phone MVC LAMP

(PhP)bull Leverage pure web dev skills ndash HTML CSS JavaScript

(jQuery)bull You want to be able to move from on-premise to Cloud

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 74: SharePoint 2013 Web Content Management for Developers TSPUG

App Model Overview

bull For On Premise or Cloud Scenariosbull App code never runs on the SharePoint boxbull App accesses SharePoint via web servicesbull Can use a Client Side Object Model approach

or a REST services approachbull Apps deployed to catalog (could be MS Store

or Corporate catalog)bull Have a Site or Tenancy scope

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 75: SharePoint 2013 Web Content Management for Developers TSPUG

App Hosting

bull SharePoint-Hosted Appsndash App resources added to SharePoint hostndash Deployed to child site known as app webndash App can have client side code only

bull Cloud-Hosted Appsndash App resources deployed on remote serverndash Remote site known as remote webndash App can have client and server side code

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 76: SharePoint 2013 Web Content Management for Developers TSPUG

Client Side Object Model (CSOM)

bull Two main kindsndash Managed CSOM (NET C code)ndash Javascript CSOM (aka JSOM)

bull Similar to the old-school OM (which it ultimately calls) but with extra considerations forndash Serializing and downloading only what you need back

from the serverndash Minimizing the number of HTTP requestsndash Async nature of JavaScript

bull Keywords Object Model

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 77: SharePoint 2013 Web Content Management for Developers TSPUG

CSOM Improvements

bull New APIs with SharePoint Server functionalityndash User Profilesndash Searchndash Taxonomyndash Feedsndash Publishingndash Sharingndash Workflowndash E-Discoveryndash IRMndash Analyticsndash Business Data

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 78: SharePoint 2013 Web Content Management for Developers TSPUG

Search Queries CSOM

ClientContext clientContext = new ClientContext(siteUrl)var query = new KeywordQuery(clientContext)queryQueryText = Search terms SearchExecutor searchExecutor = new SearchExecutor(clientContext)var resultCollection = searchExecutorExecuteQuery(query) process resultsclientContextExecuteQuery()

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 79: SharePoint 2013 Web Content Management for Developers TSPUG

REST Api

bull REpresentational State Transferbull Language-independent (only requires HTTP)ndash IE JavaScript or C

bull Formulate an HTTP request to get something back (GET) or get something done (POST or PUT)

bull SharePointrsquos REST API obeys OData (Open Data) specification (well-known standard syntaxes for queryingfiltering machine-traversable entity relationships)

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 80: SharePoint 2013 Web Content Management for Developers TSPUG

Search Queries REST

bull Keywordshttp[]_apisearchqueryquerytext=KQL Query

bull Selecting Propertieshttp[]_apisearchqueryquerytext=testampselectproperties=TitleRank

bull Sortinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendinghttp[]_apisearchqueryquerytext=testampsortlist=LastModifiedTimedescendingRankascending

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 81: SharePoint 2013 Web Content Management for Developers TSPUG

CSOM or REST

CSOM REST API

JavaScript YES YES

C YES YES

Translation 4 possibilities all technically possible

CSOM REST API

JavaScript MAYBE BEST (Usually)

C BEST (Usually) MAYBE

Translation Focus on the 2 combinations that (usually) work best

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 82: SharePoint 2013 Web Content Management for Developers TSPUG

DemoSimple Search AppUsing REST API

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 83: SharePoint 2013 Web Content Management for Developers TSPUG

Topic

Conclusions

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 84: SharePoint 2013 Web Content Management for Developers TSPUG

Conclusion ndash Full Trust

bull Full Trust Solution Development is still coolbull Tradtional ASPNET C web form

developmentbull Can ldquomigraterdquo source code from 2010

Publishing solutionsbull Great option for On Premise installation

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 85: SharePoint 2013 Web Content Management for Developers TSPUG

Conclusion - Apps

bull SharePoint Apps are the future direction for SharePoint development

bull Your first choice for new developmentbull Can be SharePoint or Cloud Hostedbull Suitable for On Premise or Onlinebull REST is API of choice for SP interactionbull Donrsquot need a local dev environmentndash Develop against SharePoint Online

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 86: SharePoint 2013 Web Content Management for Developers TSPUG

Other WCM Considerations

bull Migrating your brand to SP 2013 via Design Manager

bull Think Mobile Responsive Design Device Channels Image Renditions

bull Search Driven Cross Site Publishing Catalog site Content by Search Web Part Metadata Navigation

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 87: SharePoint 2013 Web Content Management for Developers TSPUG

Prize Telerik DevCraft Ultimate Collection

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 88: SharePoint 2013 Web Content Management for Developers TSPUG

Topic

Question and Answer

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion
Page 89: SharePoint 2013 Web Content Management for Developers TSPUG

Questions Discussion

bull Ed Mustersbull emustersinfusioncombull TechEdToronto

  • SP 2013 ndash WCM For Developers
  • Agenda
  • Introduction
  • AboutMe()
  • Slide 5
  • Slide 6
  • Published Books
  • Prize Telerik DevCraft Ultimate Collection
  • City of Lethbridge SP 2010 Solution
  • Slide 10
  • Full Trust Solution Development
  • Full Trust Solutions
  • Full Trust Solutions (2)
  • Full Trust Solution Development (2)
  • Solution Packages
  • Features
  • Lethbridge VS 2010 Solution
  • Sample App ndash Footer Links
  • Solution Structure and Dependencies
  • Using Existing SP 2010 Solutions
  • Convert VS Solutions from SP 2010
  • Convert VS Solutions from SP 2010 (2)
  • SP 2013 Full Trust Solution
  • SP 2013 Footer Links Solution
  • Migrate SP 2010 Code to SP 2013
  • WCM in SP 2013
  • Web Content Management in SP 2013
  • Web Content Management in SP 2013 (2)
  • Acknowledgement
  • Markup Improvements
  • What do you mean ldquoimprovedrdquo
  • How much better is lsquobetterrsquo
  • Great sites are ones that get found
  • Design Manager
  • Web Designer and Developer Experience
  • Why web designersdevs will love SP2013
  • A look back Designing your web site in SharePoint 2010
  • Designing your web site in SharePoint 2013
  • Mobile Device Targeting
  • Devices Matter
  • Device Channels
  • Image Renditions
  • Design Packaging
  • The Search Driven Publishing Model
  • Examples of Search Driven Publishing
  • Advantages of a Search Driven Publishing Model
  • What makes it ldquoSearch Drivenrdquo
  • Slide 48
  • What goes into making the Search Driven Publishing Model
  • Content Search Web Part
  • Slide 51
  • Slide 52
  • Slide 53
  • Content Search Web Part (2)
  • Display Templates
  • Slide 56
  • Query Builder
  • Slide 58
  • Query Rules
  • Slide 60
  • Adaptive experiences powers flexible consumption and re-use by
  • Slide 62
  • Content Catalog
  • Slide 64
  • Catalog Enabling
  • Managed Navigation
  • Slide 67
  • Cross Site Publishing
  • Slide 69
  • Slide 70
  • Cross Site Publishing (2)
  • Design Manager Migrating your Brand Mobile Considerations
  • Slide 73
  • Cross Site Publishing Metadata Navigation
  • SharePoint App Model
  • SharePoint App Model (2)
  • SharePoint App Model (3)
  • App Model Overview
  • App Hosting
  • Client Side Object Model (CSOM)
  • CSOM Improvements
  • Search Queries CSOM
  • REST Api
  • Search Queries REST
  • CSOM or REST
  • Simple Search App Using REST API
  • Conclusions
  • Conclusion ndash Full Trust
  • Conclusion - Apps
  • Other WCM Considerations
  • Prize Telerik DevCraft Ultimate Collection (2)
  • Question and Answer
  • Questions Discussion