For content publishing we need define how the content should look like. Otherwise each author would start adding content in his own way. And that would look very messy. For this we need to create layouts where we define what all information can be added. In our reference implementation, we will put Product Cover, Category, Price, Description and image. So the author will be able to add information only related to these fields.
1. Branding – Master Page & Custom Style Sheet
2. Metadata – Site Columns & Content Types
3. Page Layouts
4. Setting up deployment Paths & Jobs
Below I have mentioned steps for creating custom page layout in VS 2010, associating custom content types and finally adding custom site columns to it.
Step 1. Create a new module in the project. Rename the text file to ProductDetailsLayout.aspx.
Step 2. Since we are creating publishing site, we will take blank web part page as base for this page layout. Open ~\ 14\TEMPLATE\FEATURES\PublishingLayouts\PageLayouts\ BlankWebPartPage.aspx and copy all the contents from it. Now paste the contents into the newly created layout page.
Step 3. Now you have to associate the custom content type with the page layout. Open Elements.xml file and add value to some of the properties. We need to put values to Title, ContentType, PublishingPreviewImage & PublishingAssociatedContentType. Define preview image that you are going to use. If you want to have your own image, then add the image to the module. And in the elements.xml file mention where you want to deploy it. The value for PublishingAssociatedContentType is the ID of the custom content type found in Elements.xml file. See below sample Elements.xml file.
Step 4. The next step is to add those custom site columns we had created earlier. But before that we will deploy the solution. Once this is done, open SharePoint designer and open the site. Now go to the custom page layout created just now. Go to view-> task panes ->Tool box. In the tool box under SharePoint controls you can see content fields. Here you will be able to see the custom site columns you had created. Drag and drop each field on to the designer. Rearrange the page as per your needs, remove web part zones if you don’t require them.
Step 5. After rearranging the page in SPD copy the mark up and paste it in the page layout created in VS 2010.
Your page layout creating and deployment is ready now. From the publishing site now you can create a new publishing page and select your custom page layout.
The last piece in the jigsaw is publishing content from authoring portal to production portal.
- Vighnesh Bendre