We want to create our own site template to be used as a template for team sites, this should include security groups, a specific set of lists and libraries with required settings and a selection of content types added. There may also be some branding required.
What is the best way of doing this? It seems that there are many ways of doing it in SharePoint, the ones i have read about are:
- New site definition - i've read that this is to be avoided as it caused problems when upgrading to a new version of SP.
- Create the site using an in-built template (blank, team etc.) and then use code to acitvate required features, set required properties and add required libraries
- Feature stapling (don't full understand this but don't think it meets our needs as it's not just features we want automatically activating, we want settings changed)
- Site provisioning provider - my understanding is that this involves defining the site in code but allows the site to be available as a site template through the GUI. It sounds like this could be the best option. Any comments of caveats on this?
I would have preferred the site to be templated declarively using CAML as this seems easier to maintain, but it doesn't seem to be viable.