I made a couple of changes to a SharePoint site earlier in the week. While showing it to the customer it went down pretty well as they liked the layout and functionality. After a little more than a week, the customer was ready to show it to some of her colleagues, but when testing it with their user profiles, the page was just blank.
What could have gone wrong?
I immediately assumed that the page I edited had not been published, but upon investigation found that it was.
Then it hit me, I had been modifying the page layouts. I then went into the Master Page and Page Layouts gallery (_catalogs/masterpage/Forms/AllItems.aspx) and as I thought, the page layouts were in a pending state. They had obviously been changed and published, but not approved, therefore the regular viewers were seeing an older major version of the page layout.
I spoke of a number of components in the scenario above, let me explain how they all relate to one another:
A page is created in a pages library and will inherit the master page of the current site. The page will also take on the layout of the available page layouts. The administrator decides what page layouts are made available per site in the Page Layouts and Site Templates page (_Layouts/AreaTemplateSettings.aspx). The page is where you are able to add content, web parts and so forth.
The page layout is what defines the layout of the page. More than that, it also defines what the user may do on the page. For example, the designer can decide whether or not to add web part zones onto the page, thus enhancing the flexibility of what the user may do with the page. In a typical controlled public facing internet site, page layouts are used to add content (for display) as well as (for edit only). The “for edit only” elements are effectively metadata and will enhance search, but will not be displayed to the visiting viewer. The columns need to be added inside of a EditModePanel container.
Content Types you say? Content Types are super important as they define many things including what fields (columns) a.k.a metadata and content are available for a particular page layout. For example, if you have a NewsArticle page layout, you must have a content type associated to it that will allows the user to enter the article date, by line, article picture, author and so forth. You can then decide what is displayed on the page by altering the page layout.
The following screenshot illustrates how columns are displayed in the EditModePanel container:
The following screenshot illustrates the same page as above, but in View mode. Notice how the viewing user cannot see the “article type” and “article date” for example. Those are metadata fields used for aggregation and search.
The master page is used to create a uniform look and feel across a site or sub site. The master page contains the various controls that help build out the page, for example, the ribbon, search, quick launch, global navigation and so forth. You may move these items around with CSS (styling the DIVS) to customize the layout of the master page.
All styles that are to be used in the site, should be referenced in the master page, so the pages (made up of page layouts) can utilise them.
The items discussed above are by no means a comprehensive review of SharePoint’s publishing framework, however it will give you a solid overview of the components you will be using on a day to day basis.