SharePoint MOSS Web Content Management So you went and did it, you installed WSS 3.0 and then bought MOSS to install over top of it. You want a web site and you want it now, but hey, you're not quite sure what to do next. Here's where we come in. The following article is part one of a series on SharePoint 2007 Web Content Management. Read on as we provide an overview of SharePoint 2007’s Web CMS capabilities and set you up to dig a bit deeper into the nooks and crannies of customizing and operating a SharePoint-driven website.

Bootstrap -- Architecture Basics

To really get the most out of SharePoint you need to understand several important design and architecture concepts, and plan your implementation with a few key points in mind. For those new to this, note that we use the terms 'SharePoint' and 'MOSS' interchangeably -- MOSS stands for Microsoft Office SharePoint Server. We also need to differentiate between the free Windows SharePoint Services (WSS) product and the non-free MOSS product. MOSS is built on the foundation provided by WSS. The Web Content Management components are part of MOSS, not part of WSS. For more background, see SharePoint 2007 Review - Six Pillars of MOSS. SharePoint High-level Architecture
SharePoint High-level Architecture

Second Things Next -- User Experience and IA

Don’t ask SharePoint to help you with your User Experience or Information Architecture. MOSS is a .NET development platform which provides a set of content, collaboration, search and integration services. It assumes you have done most of the UI/UX/IA thinking long before decided upon an implementation technology. There are so many aspects to SharePoint; many ways to do things wrong. Have your user interface references and application scenarios in hand, and then start looking at how SharePoint can implement these things in the best manner possible. It certainly helps to have a SharePoint architect involved in your UX and IA design. Microsoft says it takes two to six months to properly design a SharePoint implementation. I’ve heard it’s been done faster -- it of course depends on what you are building.

Types of SharePoint Sites

SharePoint provides several templates for web sites out of the box. The ones you are interested in for web content management are in the Publishing Category and include a Collaboration Portal and a Publishing Portal. Collaboration Portal * starter site for Intranet divisional portal * contains a Document Center site, News site, Search site, and a Site Directory site by default * Workflow is not enabled * branding is possible but with more effort (default.master) * assumes you will be adding Collaboration Team Sites to the structure Publishing Portal * starter site hierarchy for Internet or a large Intranet-base website * contains Home Page, Press Release SubSite, Search Center, and a login page by default * Workflow is enabled * easily custom branding using the blueband.master page You can use either template, it’s a design choice; either one can be modified and will work for your web site. Defining Your SharePoint Site
Defining Your SharePoint Site

SharePoint Website Structure

SharePoint’s structure is made up of Site Collections and Sites. A Site Collection is the top most level for a site and is a site in itself. It can also contain within it one or more additional sites. Grouping sites within a collection provides the following benefits: * common branding and navigation * shared web parts, content types and workflow * shared search * common security, policies and site features Unless your site is very complex, you will probably only have one site collection. Really complex sites that have strict security requirements may have two or more collections. Planning your structure is very important as it’s difficult to move things around after it’s been created (although it is possible).

Look and Feel -- Branding & Navigation

If you listen to all the gossip on the net you may have heard that modifying the branding of a SharePoint site is one of the most challenging aspects of building on SharePoint. Well that may be true considering it has master pages, page layouts, themes and 26 cascading style sheets -- the primary one, core.css, has over 15,000 lines of CSS code! Ouch. But bear in mind that it’s not likely that your final design will reflect SharePoint out of the box (for an Internet or an Intranet site). If it does…fire your UX team immediately, because they are in cahoots with Microsoft! When publishing with SharePoint there are two fundamental UI concepts to understand: master pages and page layouts. These two elements dictate the overall look and feel of your website. SharePoint Master Pages
SharePoint Master Pages Master pages are a templating technology which Microsoft introduced with ASP.NET 2.0. They are handy. They enable you create one or more pages that contain the core design elements for your site including: * navigation * logo and common header * common footer * etc. -- you get the picture. A page layout is also a template, but it is always used in conjunction with a Master Page template. Page layouts deal more with the display of SharePoint content and as such each has an associated content type. MOSS 2007 comes with three default publishing content types: page, article page and welcome page. Master Pages and Page Layouts
Master Pages and Page Layouts Master pages can be manipulated via SharePoint Designer or Visual Studio. You need to have a solid understanding of CSS, HTML and ASP.NET. You also need to understand the concept and usage of a Content Placeholder. Heather Solomon is a great resource for learning about branding a SharePoint site. She even provides some master page templates that can help you get going fairly quickly.

Authoring Capabilities

Obviously you want the ability to have one or more people authoring content in your site -- otherwise, what was point of getting SharePoint? SharePoint has two ways to author content. Smart Client Authoring First, if you have MS Office 2007, then you can enable smart client authoring. This allows authors to create their content using MS Office tools and deploy it to the SharePoint site as an HTML page. Browser-based Authoring The second and most common approach to authoring is via the web browser.
Creating a New SharePoint Webpage
Creating a New SharePoint Webpage In this case, you edit directly in the website using the editing toolbar. This is considered in-context editing. You view the website as an author -- thus having authoring options available to you to add, modify and delete content on the site.
SharePoint Edit Page View
SharePoint Edit Page View In the browser authoring mode SharePoint provides a rich text editing experience. Other third party vendors, such as Telerik, offer enhanced editing controls for SharePoint.
The SharePoint Content Editing Toolbar
The SharePoint Content Editing Toolbar The editing toolbars are completely customizable, as is the HTML Editor toolbar -- you can add new functionality, add styles and formats, and restrict editing features. The SharePoint HTML Toolbar
The SharePoint HTML Toolbar SharePoint Workflow Workflow is an important aspect to authoring. It’s rare you let authors submit content directly to production without going through some type of content approval process. SharePoint comes with several out of the box workflow templates. The “Approval workflow” incorporates approver emails, tasks lists and status tracking. You can customize this workflow using SharePoint Designer. Customizations can include adding steps like translation or second level approval. SharePoint Workflow
SharePoint Workflow SharePoint Workflow Status
SharePoint Workflow Status The key point to remember when modifying a workflow process using SharePoint Designer is that you are modifying the workflow for that particular page or content type. To create a workflow process that can be used by multiple pages and content types use Visual Studio 2005. Scheduling Content Many times you want to create content to be published at a later date (e.g., press releases). You can schedule when content will appear on the site, as long as your content has versioning enabled.

Creating Multi-Lingual Websites

SharePoint is able to create and deploy websites that are multi-lingual. SharePoint has a feature called Variations that can be used to deploy content in one or more languages. SharePoint Content Variations
SharePoint Content Variations To employ this approach you create a site collection and define one or more variation sites. One of these variation sites must be the source site where the bulk of the content is entered, the rest are called target variation sites. As content is created and published to the source site, it then needs to go through an approval/publishing process for each target variation site. This model may sound familiar to those of you with Microsoft CMS experience.

Publishing & Deployment

Setting up a SharePoint site requires setting up several site infrastructures -- generally development, staging and production. Site design and development is done in development and deployed to the Staging and then Production. But what about content deployment? Rarely do you create and edit content directly on the production site. This is usually done in a Staging site where an author can prepare the content and it can go through the workflow process of translations, approvals, etc. SharePoint has built-in functionality to deploy content from a source site collection to a destination site collection -- usually in a separate production web farm. You can deploy entire site collections or just specific sites. By default, deployment is incremental only copying content that has been added or changed/deleted.

Wrap Up -- Time to Get Dirty

That’s the basics of web content management in SharePoint/MOSS 2007. Us per the usual story, the best way to really understand the technology is to get your hands dirty with it. And don't we all love to play? Remember, it is definitely all about planning what you want. Prototype a section or subset of your site in SharePoint and see if there are any gotchas you weren’t prepared for. This is a new product and there's been a lot of hype around it. Take your time to sort the marketing from the truth, and consider how the framework can best fit your business scenarios.

Stay Tuned -- Part Two: SharePoint WCM Workflow

This first article has been a high level overview of Web Content Management in SharePoint 2007. In the next article, we'll dig deeper into SharePoint workflow and how you can customize it for your different publishing needs. Stay tuned here. [[Editor's Note: Continue reading: Web Content Management with SharePoint MOSS 2007 (Part 2 - Workflow)]]