Search This Blog

Thursday, July 25, 2013

SharePoint 2013 branding MasetrPage

Reference : http://blog.blksthl.com/2013/02/26/a-guide-to-quick-sharepoint-2013-branding/
NO DEVELOPMENT IN VISUAL STUDIO OR SHAREPOINT DESIGNER REQUIRED
------------------------------------------------------------------------------------------------------ This guide has been verified in SharePoint Foundation 2013 as well as Server and Online, BIG thanks to Chuck Snyder for verifying functionality in SharePoint Foundation 2013.

Some of you may already have tried some of the branding features built into SharePoint 2013 and SharePoint Online (2013), Microsoft have added some functionality that makes it easier for some and harder for some. I had branding in 2010 pretty much figured out and now to me it seems like they have given the box a good shake, everything is almost in the same place as before…but not quite…
I have noticed that most of the branding info that is out, most blogs and presentations have been about branding a publishing site, meaning an external website or intranet portal or similar, sites meant to be branded and customized. In this guide I will fokus on the teamsite, probably the most used site of them all…

I will show you step by step how to access some of the basics in branding your sites, no development yet…the tools needed for this exercise, is notepad.exe…that’s it…

In this short guide, I will use a site located in SharePoint Online (2013/Preview, link at the end), but the steps are exactly the same in an onprem environment.

For the permanent production branding, I have to recommend using Visual Studio to create a wsp package, as long as you add the same files as I do here it will work the same. That way you will have an installable package that can be reinstalled and used in test and dev environment. You can also make sure the package works Before moving it into production.

We will make this:

Start4

Look like this:

after_v2

Now let’s get on with it:

Create a new site collection and work with the rootsite.

Start4

Having a brand-new unbranded, untouched team site, I will start by getting the files to start working with, we need a new MasterPage (.master) and a new StyleSheet (.css).
In the top right corner, click on the little cogwheel/gearwheel.

Settings1x

Then click on ‘Site settings’ in the dropdown.

Settings11x

Site Settings offers a lot of choices, we are only going to be using a few.

Settings2

The branding features of SharePoint are mainly located in the ‘Web Designer Galleries’ and the ‘Look and Feel’ sections of site settings.

Settings3

Settings4x

In Web Designer Galleries section, click on Master pages

Masterpage1

In here we will store the files we need, to make it a bit more structured, we will create a dedicated folder for our efforts only, I’ll call mine TrueSec.
In the ribbon section, click on the tab called FILES, then ‘New Folder’.

Masterpage2x

Type in the name and hit ‘Save’

Masterpage6x

The folders and files are in alphabetical order, so in my case using truesec, I have to go to the next page. Use the arrow at the bottom.

Masterpage21x

Masterpage7x

Ok, now we have a place to put our files, next, we download a copy of the default masterpage beeing used in a SharePoint 2013 team site, ‘Seattle.master’

Masterpage71x

Use the dropdown menu on the file

Seattlex

In the IE download bar, select the dropdown arrow and select ‘Save as’.

Seattle2x

Save the file in a suitable location, I put mine in a folder on the desktop. Leave the filename as is.

Seattle3x

Select ‘Open folder’

Seattle4x

Seattle5x

Next, we make a copy of the seattle.master and rename it to what we want. I’m going with truesec.master

Seattle6x

Seattle7x

Ok, now we have a local copy of the default masterpage called truesec.master. It is at this point still identical to the default and we’ll leave it that way for now.
Now, we get a copy of the default stylesheet used in the seattle.master, called core15.css.
Go back to the browser with your site and masterpage gallery, click on the SharePoint logo.

Masterpage1homex

Now, we are back in the root team site and its homepage, from here it is a simple task to download the stylesheet, since it is not located in the masterpage gallery, I’ll use a different method to get it.
In your Internet Explorer browser, click on F12, this will bring up the F12-Developer toolbar, a great built in tool.

StyleSheet2x

Click on the tab named ‘CSS’

StyleSheet3x

Make sure that the path is selected, that points to the core15.css file

StyleSheet8x

Then on the little ‘Save’ button

StyleSheet31x

This method may result in a slightly ‘off’ css file (missing navigation in one occation), the reason is that the developer dashbord will save a rendered css file instead of the actual file.
In order to avoid any risk for that, type in the full path to the actual corev15.css file, then save it to disk.

Place the file in the same folder locally on your computer as the seattle.master/truesec.master.

StyleSheet5x

Same as before, make a copy and then rename it to truesec.css

A slightly more difficult but better way, is to create a new blank text file and rename it to ‘truesec.css’, then, add to this file only the ID’s and Classes that you want to style.
Adding only the classes/ID’s you want to edit the styles for, will save bandwidth and improve performance as well as keep the css file manageble.
Example, say that you want to style the Page Title with a new font-size and color, add only this to the empty text file:
.ms-core-pageTitle
{
font-size:30pt;
color:rgb(255, 127, 39); /* blksthl orange */
}

(read the core15.css to get an idea of how it is built)

StyleSheet6x

StyleSheet7x

Ok, now we have both the files needed to make the changes to the branding, but we do need two more things to make the branding a bit more interesting. Logos, I’ll show you how to replace the default logo (the big one) and the favicon (the smaller ones), the little thing in the address bar that is actually used for a few things and will affect the braded feel of the site pretty much.

logo1x

I’m adding the files to my local folder to make it simple and keep it all in one place.

If you don’t already have a favicon for your organization, you can use any one of the free image to favicon sites available to create one from a image. I have used several and for example this works: http://favicon.htmlkit.com/favicon/.
This tool will also let you select the formats you want.

Logos1x

I have in my example a favicon file of dimension 32×32 with a color depth of 32. 16×16 works just as well.

Logos2

The original ‘SharePoint‘ logo is 180×64 and as long as you stay close to that, the design will be ok.

Logos3

Now, we will edit the files and add the simple magic lines….

First, we want to load out custom StyleSheet, it’s not custom yet, but loading it will allow you to make modifications to it later. So, open up the copy of the master file, in my case the file named truesec.master
(Notice the filepaths, all pointing to the masterpage gallery catalog and our truesec folder)

Attention! If you copy and paste from the code below, you may have to replace the quotes and double-quotes with your own, do a replace in notepad. I have tried to replace them in the code samples but be aware.
The quotes if copied here is for some reason of a different format and will cause the code to fail if used as-is. Usually you will see that you get a left and right version of the quotes, they do not work. See example:
quotesx
(This may differ depending on what text editor you are using)

Locate the line:
(Use Notepad find and search for ‘corev15’)
<SharePoint:CssRegistration Name=”Themable/corev15.css” runat=”server”/>

custommaster1x

Add directly below it as one line:
<SharePoint:CssRegistration name=”/_catalogs/masterpage/truesec/truesec.css” After=”corev15.css” runat=”server”/>

That will make:

custommaster2x

Next we add our custom favicon, locate the line:
(Use Notepad find and search for ‘favicon’)
<SharePoint:SPShortcutIcon runat=”server” IconUrl=”/_layouts/15/images/favicon.ico?rev=23″ />

Change it to:
<SharePoint:SPShortcutIcon runat=”server” IconUrl=”/_catalogs/masterpage/truesec/favicon.ico” />

custommaster5x

Next and last, we add the actual logo, locate the line below:
(Use Notepad find and search for ‘LogoImage’)

<SharePoint:SiteLogoImage CssClass=”ms-siteicon-img” name=”onetidHeadbnnr0″ id=”onetidHeadbnnr2″ LogoImageUrl=”/_layouts/15/images/siteIcon.png?rev=23″ runat=”server”/>

Edit or replace it to look like this:

<SharePoint:SiteLogoImage CssClass=”ms-siteicon-img” name=”onetidHeadbnnr0″ id=”onetidHeadbnnr2″ LogoImageUrl=”/_catalogs/masterpage/truesec/trueseclogo.png” runat=”server”/>
( Update: Added missing endtag /> )

custommaster4x

There, the files are edited and if we upload and use these, we will have the logo and the favicon used in our site. We will at this point not touch the css.

Warning! Make sure that you do not make any mistakes editing the masterpage, if you accidentally remove something you could end up with a site that is inaccessible, if you do, SharePoint designer can be used to correct the masterpage again

(If you don’t plan to edit the css in the future, you can either skip loading it or at least clear the file of content, making it empty and quick to load.)

Upload the files in your local folder from the masterpage gallery, cogwheel, ‘Site settings’, ‘Master pages’. Browse to your folder, my ‘truesec’ folder.

Addfilesx

In the upload dialog, browse to your files, add a comment if you like but make sure that the destination folder points to your folder (relative path).

Addfiles1x

In the second dialog, make sure that you for the masterpage, select ASP.NET Master Page, like in the picture below, for the other files including the css, select Content type ‘Design file’

Addfiles61x

Ok, files uploaded, all ready to use…almost.
I have found that the master needs to be published as a major version before being accessible from the gui. Click on the dropdown arrow, then ‘Publish a Major Version’.

Apparently, if the publishing site feature hasn’t been activated, the ‘Publish as a Major Version’ is missing, the workaround then is to check the file out, then check it back in and select major version.

Addfiles7x

Now, we need to change the masterpage that is used…this is actually a part of the publishing features, but if you don’t have the site collection publishing feature and the site publishing feature activated, try using this direct link instead:

[URL to your team site]/_layouts/15/ChangeSiteMasterPage.aspx

The ’Site Setting – Site Master Page Setting’ dialog seems to only be available if the site Collection feature, ‘SharePoint Server Publishing Feature’, has once been enabled. Try it, I enabled it, accessed the page, then disabled it again and I could still access it. (I don’t Think that is by design.)
Sometimes there is an error when clicking ok but the masterpage was still updated…this in onprem as well as online.

For me it looks like:

path

Now, we change the masterpage used from this:

ChangeMaster1x

To this:

ChangeMaster2x

Click on OK in the bottom right corner.

ChangeMaster3x

Done, TADA!

Tadax

(The green background comes from Windows 8s adaptive coloring based on the background image, my background Changes on a Schedule so IE will look different all the time)
If you also pin the Internet Explorer tab to the taskbar, you will also have it look like this:

Tada1x

Nice huh?
Try to make some light changes to the css file as well, start out small. Use F12 Developer Toolbar and the arrow function to point to an object and find out what styles are applied and from what id/class they are coming.
It’s easy:

editcssx

Press F12, then use the arrow

editcss1x

Click on an object, like the site title

editcss2x

In the styles list you will now be able to find what gives the title its color and size:

.ms-core-pageTitle, .ms-corepageTitle a
and
.ms-core-pageTitle

Locate them in the local css, upload it and overwrite the old, reload the page, VOILA!

PageTitle

To continue, follow the next part of this SharePoint 2013 branding guide:
A guide to quick SharePoint 2013 branding – part 2 – with Javascript

This will allow you to use java to set the color and image of the top ‘chrome’. Even the Little buttons and toggles to the right. You will own them all.

Afterx

11 comments:

  1. Great article! That is the type of information that are supposed to be shared across the net.
    Shame on Google for now not positioning this post upper!

    Come on over and talk over with my website . Thanks =)

    Here is my blog Houston SEO Company

    ReplyDelete
  2. I study your all contain it is really very lovely, look for some relevant details here.




    Licensing Company & Product Licensing

    ReplyDelete
  3. I love your blog.. very nice colors & theme. Did you design this website
    yourself or did you hire someone to do it for you?
    Plz answer back as I'm looking to design my own blog and would like to know where u got this
    from. kudos

    Here is my blog post radiant skin cream

    ReplyDelete
  4. Keep on writing, great job!

    my page minneapolis seo

    ReplyDelete
  5. Go ahead and obtain this limited edition Head Soccer cheat
    app if you wish to get in the leaderboards!

    my site :: Head Soccer Hack

    ReplyDelete
  6. Your style is really unique compared to other people I have read stuff from.
    Thanks for posting when you've got the opportunity,
    Guess I will just bookmark this blog.

    Check out my site :: B&B

    ReplyDelete
  7. Appreciating the time and effort you put into your website and detailed information you provide.

    It's good to come across a blog every once
    in a while that isn't the same out of date rehashed
    material. Wonderful read! I've bookmarked your site
    and I'm adding your RSS feeds to my Google account.

    Look into my web site ... Rhinoplasty Sydney

    ReplyDelete
  8. Thanks for your marvelous posting! I definitely enjoyed
    reading it, you are a great author.I will be sure to bookmark your blog and definitely will come back later on. I want to encourage you continue
    your great posts, have a nice morning!

    Also visit my web page Coolsculpting Sydney

    ReplyDelete