The other day I had a problem in a SharePoint application. I have created a couple of web part pages but in these pages the Quick Launch menu on the left side disappeared. After some searching I found a blog post describing how to get it back. The reason is that the page templates have empty content placeholder included.
Empty placeholders that you may want to remove are:
• PlaceHolderLeftActions
• PlaceHolderPageDescription
• PlaceHolderBodyRightMargin
• PlaceHolderPageImage
• PlaceHolderLeftNavBar
• PlaceHolderNavSpacer

However, the post describes how to open the page in SharePoint Designer and remove the placeholders. I would rather not do that since that will change the templates for all Web Applications on that server. Instead I chose to create new custom page templates withoug those specific placeholders.


I found another blog post on how to create custom webpart pages for SharePoint 2007. It references an MSDN article about creating the pages in MOSS 2003 and then add the differences and changes you have to make in order to create the pages in 2007.

The steps are easy to follow and you will have your “Create custom web part page” available in no time and a Quick Launch on your pages.
In short the steps are as follows:
1. Download the sample web part pages from MSDN
2. Copy the Custspcf.aspx page to
Local_drive:Program FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATELAYOUTS
3. Copy the images to Local_drive:Program FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATELAYOUTSIMAGES
4. Open the file create.aspx  found in
Local_drive:Program FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATELAYOUTS and search for the text href=”spcf.aspx”. Paste the following text after the closing table tag.

<table style=”padding: 3px 0px 3px 4px;” class=”ms-itemstatic” onclick=”javascript:NavigateInnerHref(event)” onmouseover=”this.className=’ms-itemhover’;ShowListInformation(‘<SharePoint:EncodedLiteral runat=”server” EncodeMethod=”EcmaScriptStringLiteralEncode” Text=”<%$Resources:wss,viewlsts_wp_page_title%>”/>’,'<SharePoint:EncodedLiteral runat=”server” EncodeMethod=”EcmaScriptStringLiteralEncode” Text=”<%$Resources:wss,viewlsts_wp_page_desc%>”/>’,’/_layouts/images/ltsmrtpg.gif’)” onmouseout=”this.className=’ms-itemstatic’;HideListInformation()” cellspacing=”0″ cellpadding=”0″ width=”100%” border=”0″>
    <td valign=”top” nowrap class=”ms-descriptiontext” style=”padding-top:1px”>
     <IMG src=”/_layouts/images/setrect.gif” width=5px height=5px alt=”<SharePoint:EncodedLiteral runat=’server’ text='<%$Resources:wss,viewlsts_wp_page_desc%>’ EncodeMethod=’HtmlEncode’/>”>&nbsp;
    <td valign=”top” width=100% class=”ms-descriptiontext”>
     <a id=”onetidCustWebPartPage” href=”Custspcf.aspx” target=”_self”><SharePoint:EncodedLiteral runat=”server” text=”Custom Web Part Page” EncodeMethod=’HtmlEncode’/></a>
5. Copy the sample web part pages to
Local_drive:Program FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATE1033STSDOCTEMPSMARTPGS
6. In order for the Quick Launch to be displayed you have to open all the sample web part pages and remove the mentioned contentplaceholders.