views:

283

answers:

1

I have created a child master which references a parent master. I have deployed this as a feature and stapled the feature to many site definitions.

When I turn on the feature, both my parent and child masters are rendering correctly - everything is as it should be.

However, when I open up SharePoint designer and customize child.master, it then sort of "removes" 4 contentPlaceHolders - PlaceHolderMain is one of them. When I say "removes", what it does is it does not render any information that should be inside of that placeholder. So in this case, I get the error that it can't find any web part zones and it's closing all my web parts. And my Edit Page menu is gone.

I view source on the page and I find that nothing is rendered just in those 4 tags. However, when I re-open the child.master in designer, the contentPlaceHolder tags are all there.

Does anyone have any experience with nested masters, and if so, any problems with modifying the child master via SharePoint Designer?

Thanks in advance.

A: 

I have found out at least part of the answer. It turns out, according to http://kwizcom.blogspot.com/2007/11/nested-master-pages-int-sharepoint.html, that when you unghost (customize) the child.master page, you also MUST unghost the parent.master page.

So you just have to go into SharePoint Designer and save the parent.master page, before you save your changes to your child.master.

This, however, seems against the whole point - you would separate the master pages out in a case where you want to control one section of a master, while letting them customize another section of the master. You would make changes, potentially, on the parent master, and wish all pages to receive those changes. However in this case, the unghosted child masters have to have their parents unghosted too. So you'd have to write a script to go upload the new parent.master to all sites.

This seems, again, like I'm doing something wrong rather than this being a limitation. Can anyone explain to me the unghosting rules that would make this the case?

Thank you in advance.