21
Developing Branding Solutions for 2013 Thomas Daly, [email protected]

Developing branding solutions for 2013

Embed Size (px)

Citation preview

Developing

Branding

Solutions for 2013Thomas Daly

tdalybandrsolutionscom

About Me SharePoint Consultant BampR Business Solutions

Developer

Branding

Focused on the UI side of things

Community Involvement Speaker

NJ SP Princeton User Group

SharePoint Saturday NYC organizer

NothingButSharePointcom ndash Helper Contributor

My SharePoint Blog MSDN forums

Topics wersquoll cover Creating Branding Based Project in Visual

Studio 2012

Deploying Assets Themes

CSS Images amp JavaScript

Master Pages

Composed Looks

Additional Page Head

CSSRegistration ScriptLink Cache Busting

Feature Receivers

Where are we starting from

Master

PageCSS

Theme

Palette

ImagesWeb Fonts

SharePoint Server 2013

Visual Studio 2012

Microsoft Office Developer Tools for Visual

Studio 2012

Quick Deploy [Mavention]

CSS Plugin

Development Environment

Considerations

Where will you deploy files

Will it be a Sandbox or Farm level solution

Will it be SPSite or SPWeb based scoping

Will you be auto applying master pages themes or composed looks

Will you be pushing branding down to subsites

Will you need any additional scripts to programmatically apply unapply

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

About Me SharePoint Consultant BampR Business Solutions

Developer

Branding

Focused on the UI side of things

Community Involvement Speaker

NJ SP Princeton User Group

SharePoint Saturday NYC organizer

NothingButSharePointcom ndash Helper Contributor

My SharePoint Blog MSDN forums

Topics wersquoll cover Creating Branding Based Project in Visual

Studio 2012

Deploying Assets Themes

CSS Images amp JavaScript

Master Pages

Composed Looks

Additional Page Head

CSSRegistration ScriptLink Cache Busting

Feature Receivers

Where are we starting from

Master

PageCSS

Theme

Palette

ImagesWeb Fonts

SharePoint Server 2013

Visual Studio 2012

Microsoft Office Developer Tools for Visual

Studio 2012

Quick Deploy [Mavention]

CSS Plugin

Development Environment

Considerations

Where will you deploy files

Will it be a Sandbox or Farm level solution

Will it be SPSite or SPWeb based scoping

Will you be auto applying master pages themes or composed looks

Will you be pushing branding down to subsites

Will you need any additional scripts to programmatically apply unapply

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Topics wersquoll cover Creating Branding Based Project in Visual

Studio 2012

Deploying Assets Themes

CSS Images amp JavaScript

Master Pages

Composed Looks

Additional Page Head

CSSRegistration ScriptLink Cache Busting

Feature Receivers

Where are we starting from

Master

PageCSS

Theme

Palette

ImagesWeb Fonts

SharePoint Server 2013

Visual Studio 2012

Microsoft Office Developer Tools for Visual

Studio 2012

Quick Deploy [Mavention]

CSS Plugin

Development Environment

Considerations

Where will you deploy files

Will it be a Sandbox or Farm level solution

Will it be SPSite or SPWeb based scoping

Will you be auto applying master pages themes or composed looks

Will you be pushing branding down to subsites

Will you need any additional scripts to programmatically apply unapply

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Where are we starting from

Master

PageCSS

Theme

Palette

ImagesWeb Fonts

SharePoint Server 2013

Visual Studio 2012

Microsoft Office Developer Tools for Visual

Studio 2012

Quick Deploy [Mavention]

CSS Plugin

Development Environment

Considerations

Where will you deploy files

Will it be a Sandbox or Farm level solution

Will it be SPSite or SPWeb based scoping

Will you be auto applying master pages themes or composed looks

Will you be pushing branding down to subsites

Will you need any additional scripts to programmatically apply unapply

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

SharePoint Server 2013

Visual Studio 2012

Microsoft Office Developer Tools for Visual

Studio 2012

Quick Deploy [Mavention]

CSS Plugin

Development Environment

Considerations

Where will you deploy files

Will it be a Sandbox or Farm level solution

Will it be SPSite or SPWeb based scoping

Will you be auto applying master pages themes or composed looks

Will you be pushing branding down to subsites

Will you need any additional scripts to programmatically apply unapply

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Considerations

Where will you deploy files

Will it be a Sandbox or Farm level solution

Will it be SPSite or SPWeb based scoping

Will you be auto applying master pages themes or composed looks

Will you be pushing branding down to subsites

Will you need any additional scripts to programmatically apply unapply

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Building Simple Project

Mapped Images Folder

Feature Image

Mapped Layouts Folder

CSS Files

Images

JS Files

Modules

Master Pages

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Deploying a Composed Look

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

What do we need in a

Composed Look

Master Page

Theme Palette

Background Image [optional]

Font Scheme [optional]

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Building the Project

Modules

Theme [Definition]

Fonts [Definition]

Layouts

Web Fonts

Background Image

Elements

Composed Look [Definition]

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Alternative Branding Technique

No Custom Master Page

Attach Custom Style Sheets or Scripts

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Additional Page Head

Additional Page Head ndash a delegate

control located in the ltHEADgt of

SharePoint master pages Can be used to

load multiple controls via code without

touching the master page directly

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

User Control amp Element

Element

User Control

Feature

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Sandbox Solution Alternative

Like a trick ScriptLink is used to link JS files

CustomAction

ltCustomAction Id=SiteCSS Location=ScriptLink

ScriptBlock=documentwrite(ampltlink

rel=ampquotstylesheetampquot

type=ampquottextcssampquot

href=ampquot_layouts15SharePointProject1myStyles

cssampquotampgtamplt + linkampgt)

Sequence=203 gt

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Building the Project

User Control

Element

Pointer to User Control

Sandbox ScriptLink

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Feature Application of BrandingFeature

Feature Receiver

Composed Look

Site Icon

Master Page

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Auto Brand New Sites By default (Non-Publishing) SharePoint does not

trickle down applied themes master page amp css By creating Web Provisioned Event Handler we

can make the new children sites have the same branding as their parent

Common things to set are Master Page Url

Custom Master Page Url

Site Logo

Parent Navigation

Theme Composed Look Use Synchronous Property

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Optimization Techniques

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Consideration for CSS amp

JavaScript

CSS Files

Use CSSRegistraiton

JavaScript Files

Use ScriptLink

Top Reasons

SharePoint Ensures

Loading Once

Can specify what

to load after

Uses SharePoint

built-in cache

busting

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Cache Busting

Calculated MD5 hash of the file contents

Will ensure a fresh copy will be delivered

Auto-gen hash each time file is modified

File must be relative to the layouts

[CSS]

_layouts1033stylesltMyFoldergtltMyFilecssgt

[JS]

_layoutsltMyFoldergtltMyFilejsgt

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn

Questions or Comments

Contact information

Thomas M Daly

Company ndash httpwwwbandrsolutionscom

Blog ndash httpthomasdalynet

Twitter - _TomDaly_

Email

TdalyBandRSolutionscom [work]

thomasmdalyhotmailcom [personal]

LinkedIn