Sep 02 2016 02:38 AM
We are deploying site structure using a PnP provisioning template to the root of SharePoint site collections using the PnP Provisioning framework. Everything gets deployed except navigation items.
I've narrowed the situation down to a small provisioning script with only Security and Navigation elements. When I deploy this, the security element is picked up by the provisioning engine, but the navigation element not.
Why is this not working?
<?xml version="1.0"?> <pnp:Provisioning xmlns:pnp="http://schemas.dev.office.com/PnP/2016/05/ProvisioningSchema"> <pnp:Preferences Generator="OfficeDevPnP.Core, Version=2.6.1608.0, Culture=neutral, PublicKeyToken=3751622786b357c2" /> <pnp:Templates ID="CONTAINER-TEMPLATE-7FB72622E1654B1C9765678E8C5093A3"> <pnp:ProvisioningTemplate ID="TEMPLATE-7FB72622E1654B1C9765678E8C5093A3" Version="1" BaseSiteTemplate="STS#0"> <pnp:Security ClearSubscopes="false"> <pnp:AdditionalOwners> <pnp:User Name="c:0-.f|rolemanager|spo-grid-all-users/9fcc7bfd-834f-4f72-89f1-509ad9e9a92f" /> </pnp:AdditionalOwners> </pnp:Security> <pnp:Navigation> <pnp:GlobalNavigation NavigationType="Structural"> <pnp:StructuralNavigation RemoveExistingNodes="true"> <pnp:NavigationNode IsExternal="true" Title="Wikipedia" Url="http://www.wikipedia.org"></pnp:NavigationNode> </pnp:StructuralNavigation> </pnp:GlobalNavigation> <pnp:CurrentNavigation NavigationType="Structural"> <pnp:StructuralNavigation RemoveExistingNodes="true"> <pnp:NavigationNode IsExternal="false" Title="Start" Url="/SitePages/Home.aspx"></pnp:NavigationNode> <pnp:NavigationNode IsExternal="false" Title="Project team" Url="{site}"> <pnp:NavigationNode IsExternal="false" Title="Work docs" Url="{site}/Work documents"></pnp:NavigationNode> <pnp:NavigationNode IsExternal="false" Title="Mail" Url="{site}/Work mail"></pnp:NavigationNode> <pnp:NavigationNode IsExternal="false" Title="Deliverables" Url="{site}/Deliverables"></pnp:NavigationNode> </pnp:NavigationNode>
<pnp:NavigationNode IsExternal="true" Title="Wikipedia" Url="http://www.wikipedia.org"></pnp:NavigationNode> </pnp:StructuralNavigation> </pnp:CurrentNavigation> </pnp:Navigation> </pnp:ProvisioningTemplate> </pnp:Templates> </pnp:Provisioning>
I've managed to deploy the navigation items as a workaround using the PnP PowerShell august 2016 cmdlets using the Add-SPONavigationNode method, but I would like to transform this into a provisioning template.
Sep 02 2016 04:42 AM - edited Sep 02 2016 09:01 AM
Shameless plug 🙂 https://github.com/InstantQuick/InstantQuick-SharePoint-Provisioning
It does what you want by default.
Sep 02 2016 08:54 AM
SolutionCurrently the navigation component only works for publishing sites...that might be your problem? If you need it for regular sites as well I suggest logging an issue in the PnP-Sites-Core repo (https://github.com/OfficeDev/pnp-sites-core/issues) or alternatively propose a change via a PR.
Sep 08 2016 01:16 AM
Issue logged on GitHub at https://github.com/OfficeDev/PnP-Sites-Core/issues/738
Sep 02 2016 08:54 AM
SolutionCurrently the navigation component only works for publishing sites...that might be your problem? If you need it for regular sites as well I suggest logging an issue in the PnP-Sites-Core repo (https://github.com/OfficeDev/pnp-sites-core/issues) or alternatively propose a change via a PR.