Table of contents
TOC
Collapse the table of content
Expand the table of content

Get-PnPProvisioningTemplate

Bert Jansen|Last Updated: 2/20/2017
|
1 Contributor

Generates a provisioning template from a web

Syntax

Get-PnPProvisioningTemplate [-IncludeAllTermGroups [<SwitchParameter>]]
                            [-IncludeSiteCollectionTermGroup [<SwitchParameter>]]
                            [-IncludeSiteGroups [<SwitchParameter>]]
                            [-IncludeTermGroupsSecurity [<SwitchParameter>]]
                            [-IncludeSearchConfiguration [<SwitchParameter>]]
                            [-PersistBrandingFiles [<SwitchParameter>]]
                            [-PersistPublishingFiles [<SwitchParameter>]]
                            [-IncludeNativePublishingFiles [<SwitchParameter>]]
                            [-SkipVersionCheck [<SwitchParameter>]]
                            [-PersistMultiLanguageResources [<SwitchParameter>]]
                            [-ResourceFilePrefix <String>]
                            [-Handlers <Handlers>]
                            [-ExcludeHandlers <Handlers>]
                            [-ExtensibilityHandlers <ExtensibilityHandler[]>]
                            [-TemplateProviderExtensions <ITemplateProviderExtension[]>]
                            [-Force [<SwitchParameter>]]
                            [-Encoding <Encoding>]
                            [-TemplateDisplayName <String>]
                            [-TemplateImagePreviewUrl <String>]
                            [-TemplateProperties <Hashtable>]
                            [-OutputInstance [<SwitchParameter>]]
                            [-Web <WebPipeBind>]
                            [-Out <String>]
                            [-Schema <XMLPnPSchemaVersion>]

Parameters

ParameterTypeRequiredDescription
EncodingEncodingFalseThe encoding type of the XML file, Unicode is default
ExcludeHandlersHandlersFalseAllows you to run all handlers, excluding the ones specified.
ExtensibilityHandlersExtensibilityHandler[]FalseAllows you to specify ExtensbilityHandlers to execute while extracting a template.
ForceSwitchParameterFalseOverwrites the output file if it exists.
HandlersHandlersFalseAllows you to only process a specific type of artifact in the site. Notice that this might result in a non-working template, as some of the handlers require other artifacts in place if they are not part of what your extracting.
IncludeAllTermGroupsSwitchParameterFalseIf specified, all term groups will be included. Overrides IncludeSiteCollectionTermGroup.
IncludeNativePublishingFilesSwitchParameterFalseIf specified, out of the box / native publishing files will be saved.
IncludeSearchConfigurationSwitchParameterFalseIf specified the template will contain the current search configuration of the site.
IncludeSiteCollectionTermGroupSwitchParameterFalseIf specified, all the site collection term groups will be included. Overridden by IncludeAllTermGroups.
IncludeSiteGroupsSwitchParameterFalseIf specified all site groups will be included.
IncludeTermGroupsSecuritySwitchParameterFalseIf specified all the managers and contributors of term groups will be included.
OutStringFalseFilename to write to, optionally including full path
OutputInstanceSwitchParameterFalseReturns the template as an in-memory object, which is an instance of the ProvisioningTemplate type of the PnP Core Component. It cannot be used together with the -Out parameter.
PersistBrandingFilesSwitchParameterFalseIf specified the files used for masterpages, sitelogo, alternate CSS and the files that make up the composed look will be saved.
PersistMultiLanguageResourcesSwitchParameterFalseIf specified, resource values for applicable artifacts will be persisted to a resource file
PersistPublishingFilesSwitchParameterFalseIf specified the files used for the publishing feature will be saved.
ResourceFilePrefixStringFalseIf specified, resource files will be saved with the specified prefix instead of using the template name specified. If no template name is specified the files will be called PnP-Resources..resx. See examples for more info.
SchemaXMLPnPSchemaVersionFalseThe schema of the output to use, defaults to the latest schema
SkipVersionCheckSwitchParameterFalseDuring extraction the version of the server will be checked for certain actions. If you specify this switch, this check will be skipped.
TemplateDisplayNameStringFalseIt can be used to specify the DisplayName of the template file that will be extracted.
TemplateImagePreviewUrlStringFalseIt can be used to specify the ImagePreviewUrl of the template file that will be extracted.
TemplatePropertiesHashtableFalseIt can be used to specify custom Properties for the template file that will be extracted.
TemplateProviderExtensionsITemplateProviderExtension[]FalseAllows you to specify ITemplateProviderExtension to execute while extracting a template.
WebWebPipeBindFalseThe web to apply the command to. Omit this parameter to use the current web.

Examples

Example 1

PS:> Get-PnPProvisioningTemplate -Out template.pnp

Extracts a provisioning template in Office Open XML from the current web.

Example 2

PS:> Get-PnPProvisioningTemplate -Out template.xml

Extracts a provisioning template in XML format from the current web.

Example 3

PS:> Get-PnPProvisioningTemplate -Out template.pnp -Schema V201503

Extracts a provisioning template in Office Open XML from the current web and saves it in the V201503 version of the schema.

Example 4

PS:> Get-PnPProvisioningTemplate -Out template.pnp -IncludeAllTermGroups

Extracts a provisioning template in Office Open XML from the current web and includes all term groups, term sets and terms from the Managed Metadata Service Taxonomy.

Example 5

PS:> Get-PnPProvisioningTemplate -Out template.pnp -IncludeSiteCollectionTermGroup

Extracts a provisioning template in Office Open XML from the current web and includes the term group currently (if set) assigned to the site collection.

Example 6

PS:> Get-PnPProvisioningTemplate -Out template.pnp -PersistComposedLookFiles

Extracts a provisioning template in Office Open XML from the current web and saves the files that make up the composed look to the same folder as where the template is saved.

Example 7

PS:> Get-PnPProvisioningTemplate -Out template.pnp -Handlers Lists, SiteSecurity

Extracts a provisioning template in Office Open XML from the current web, but only processes lists and site security when generating the template.

Example 8


PS:> $handler1 = New-PnPExtensibilityHandlerObject -Assembly Contoso.Core.Handlers -Type Contoso.Core.Handlers.MyExtensibilityHandler1
PS:> $handler2 = New-PnPExtensibilityHandlerObject -Assembly Contoso.Core.Handlers -Type Contoso.Core.Handlers.MyExtensibilityHandler1
PS:> Get-PnPProvisioningTemplate -Out NewTemplate.xml -ExtensibilityHandlers $handler1,$handler2

This will create two new ExtensibilityHandler objects that are run during extraction of the template Only supported on SP2016 and SP Online

Example 9

PS:> Get-PnPProvisioningTemplate -Out template.pnp -PersistMultiLanguageResources

Extracts a provisioning template in Office Open XML from the current web, and for supported artifacts it will create a resource file for each supported language (based upon the language settings of the current web). The generated resource files will be named after the value specified in the Out parameter. For instance if the Out parameter is specified as -Out 'template.xml' the generated resource file will be called 'template.en-US.resx'. Only supported on SP2016 and SP Online

Example 10

PS:> Get-PnPProvisioningTemplate -Out template.pnp -PersistMultiLanguageResources -ResourceFilePrefix MyResources

Extracts a provisioning template in Office Open XML from the current web, and for supported artifacts it will create a resource file for each supported language (based upon the language settings of the current web). The generated resource files will be named 'MyResources.en-US.resx' etc.

Example 11

PS:> $template = Get-PnPProvisioningTemplate -OutputInstance

Extracts an instance of a provisioning template object from the current web. This syntax cannot be used together with the -Out parameter, but it can be used together with any other supported parameters.

© 2017 Microsoft