So I have been researching this issue and I can see that I'm facing a lot of issues at the same time.

Basically... I want to create a site template that has publishing features enabled and then it also has multiple subsites and those subsites might have a couple of subsites as well. Many of the pages in the template have different page layouts as well.

All of the subsites will inherit the same master page from the root level of the site collection.

The main problem is that creating a site template of a site with publishing features is not supported. If I append the _layouts/savetmpl.aspx to create a template anyway, I don't get the subsites and the created site is broken in multiple ways. Home page hasn't been set up, it doesn't inherit the correct master page, etc.

At the moment I am trying to figure out the best way to accomplish this and I was thinking of doing something like this:

  1. Create all of the pages&subsites in the the site I want to use as a template and rename it as "Site A Template" (for example)
  2. Create an empty site collection template
  3. Add a new event receiver that gets fired when the new template is used to create a site
  4. Programmatically enable all of the publishing features and other necessities inside the new site
  5. Copy all of the content from the "Site A Template" to the created site including the subsites and the content inside those subsites (using a recursive loop)

Can anyone tell me if I'm on the right track? Maybe I'm overthinking this and there's a better solution that I'm not seeing..


1 Answer 1


Why dont you create all these as a SharePoint Feature(s) and activate those in a Plain Vallina Team sites/blank site ?? Site Template is always a problem and when you want to upgrade to a latest version of sharepoint you will endup in trouble !!

  • This site will be used by not-so tech savvy people so I want to make the process as painless for them as it can be. That's the reason I want to use a site template so that they can just click on Site Actions -> New Site -> "Name of the template" -> Fill in the name and press OK. But you are correct, site template is not the way to go. I'll be using a Web template instead. I found a great article about this issue here blogs.msdn.com/b/vesku/archive/2010/10/14/… I'll update this question once I tinker around a little bit and see what I can accomplish!
    – Juhani
    Commented Aug 24, 2011 at 1:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.