WAN Wiki Rss Feedhttps://wan.codeplex.com/WAN Wiki Rss DescriptionUpdated Wiki: Homehttp://wan.codeplex.com/wikipage?version=4<div class="wikidoc">
<p><span style="font-family:Arial,Helvetica,sans-serif">If you want to architect a functional and easy to maintain SharePoint logical architecture you're going to have to use multiple site collections, and even web applications.</span><br>
<span style="font-family:Arial,Helvetica,sans-serif"><br>
</span><span style="font-family:Arial,Helvetica,sans-serif">Using multiple site collections is easy enough, but then you'll encounter navigation issues. There are a number of cross site navigation web parts, but I didn't like any of them.</span><br>
<span style="font-family:Arial,Helvetica,sans-serif">Most&nbsp; inherit some for sitemap provider and require you to edit the layouts.sitemap... anyway I figured I could do better so I did, and I'm sharing it with you.</span><br>
<span style="font-family:Arial,Helvetica,sans-serif"><br>
</span><span style="font-family:Arial,Helvetica,sans-serif">Introducing the <strong>
Web Application Navigator</strong></span><br>
<span style="font-family:Arial,Helvetica,sans-serif"><br>
</span><strong><span style="font-family:Arial,Helvetica,sans-serif">Features:</span></strong></p>
<ol>
<li><span style="font-family:Arial,Helvetica,sans-serif">List based navigation. </span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Multiple navigation list support.
</span></li><li><span style="font-family:Arial,Helvetica,sans-serif">Menu or tree view.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Security trimming.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Display, or hide without deleting navigation item.</span>
</li></ol>
<p><strong><span style="font-family:Arial,Helvetica,sans-serif">Installation:</span></strong></p>
<ol>
<li><span style="font-family:Arial,Helvetica,sans-serif">Add the IIOS.SP.WebParts.Navigation.wsp to your farm solutions.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Deploy the Solution to a Web Application.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Enable the Feature in Site Collection.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Add the web part to your master page or web part page.
</span></li></ol>
<p><strong><span style="font-family:Arial,Helvetica,sans-serif">&nbsp;Activation:</span></strong></p>
<ol>
<li><span style="font-family:Arial,Helvetica,sans-serif">When you activate the Feature it will create a Navigation list in the root site, go to the Web Application and loop through all the Site Collections, and their Sites the user who is activating the feature
has access to (so probably a good idea for a Farm Admin to activate it) and save the URL, Position and Site name in the Navigation list.<br>
<img src="http://1.bp.blogspot.com/-M8mPndotzCY/UJsuK09HJHI/AAAAAAAAEik/668-9C4Zl3k/Capture.JPG" border="0" alt=""></span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">The Feature will create a Custom Action on the settings page under Look and Feel, so you can access the Navigation list
</span>
<div style="clear:both; text-align:center"><span style="font-family:Arial,Helvetica,sans-serif"><a href="http://2.bp.blogspot.com/-JoQTPNeyEC4/UJsuKwlMJcI/AAAAAAAAEic/FpK4MCGGxLo/s1600/Capture2.JPG" style="margin-left:1em; margin-right:1em"><img src="http://2.bp.blogspot.com/-JoQTPNeyEC4/UJsuKwlMJcI/AAAAAAAAEic/FpK4MCGGxLo/s1600/Capture2.JPG" border="0" alt=""></a></span></div>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">And finally adds the web part definition to the web part gallery.</span>
</li></ol>
<p><span style="font-family:Arial,Helvetica,sans-serif"><strong>Usage:</strong></span></p>
<ol>
<li><span style="font-family:Arial,Helvetica,sans-serif">All navigation links are stored in a Navigation list. Activating the feature will create one, but you can create more if required. The list implements a simple Parent&gt; Child relationship to render
a hierarchy.&nbsp; You can have n level children. You can also add as many navigation links as required.</span>
<div style="clear:both; text-align:center"><span style="font-family:Arial,Helvetica,sans-serif"><a href="http://4.bp.blogspot.com/-r6NWx898Gmc/UJsuLPUTCgI/AAAAAAAAEig/m54Tq7wig7M/s1600/Capture3.JPG" style="margin-left:1em; margin-right:1em"><img src="http://4.bp.blogspot.com/-r6NWx898Gmc/UJsuLPUTCgI/AAAAAAAAEig/m54Tq7wig7M/s320/Capture3.JPG" border="0" alt="" width="320" height="132"></a></span></div>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">The list contains the metadata to render the navigation. All the fields are self explanatory maybe with the exception of...<br>
<strong>Position</strong>: This is the position the link will have in relation to it's siblings .<br>
<strong>Display</strong>: This shows or hides the link.<br>
<strong>Security Trim</strong>: If this is disabled, it won't check if the user has access to the site and will render the link regardless. This is useful if you want to give users access to a child site, but not the parent site.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">To render the navigation menu, you need to add the web part to a page, or a master page.
</span>
<div style="clear:both; text-align:center"><span style="font-family:Arial,Helvetica,sans-serif"><a href="http://3.bp.blogspot.com/-1bzGY2jQ47U/UJsuL6moa-I/AAAAAAAAEio/ktTwp3w1b_s/s1600/Capture4.JPG" style="margin-left:1em; margin-right:1em"><img src="http://3.bp.blogspot.com/-1bzGY2jQ47U/UJsuL6moa-I/AAAAAAAAEio/ktTwp3w1b_s/s320/Capture4.JPG" border="0" alt="" width="320" height="228"></a></span></div>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Once the web part has 3 properties you can edit.<br>
<strong>List Name</strong>: this is the name of the list that contains the Navigation items. If you create another list just enter the name here.<br>
<strong>Display Tree</strong>: If enabled it will render the navigation as a tree. This is implemented with the help of
<a href="http://sharepoint-tweaking.blogspot.com.au/2008/01/treeview-with-select-onclick-event.html" target="_blank">
GTreeView</a> by Per G&aring;rdebrink with his permission.<br>
<strong>Use Full Width</strong>: If you want the menu to cover the full width select this, otherwise it will only use the minimum required.</span>
</li></ol>
<p><span style="font-family:Arial,Helvetica,sans-serif"><strong>Use case:</strong></span><br>
<span style="font-family:Arial,Helvetica,sans-serif">You have a web application with 10 Site Collections, these Site Collections have a combined 30 subsites.<br>
You want to implement consistent navigation across all sites.</span></p>
<ol>
<li><span style="font-family:Arial,Helvetica,sans-serif">Deploy the Solution to the web app.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Activate the Feature on the root Site Collection of the web app.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Modify all the Site Collection master pages by adding the web part in<br>
or modify the SharePoint hive master page by adding the web part in<br>
or add the web part in to a page.</span> </li><li><span style="font-family:Arial,Helvetica,sans-serif">If you modified the master page/s, then the web part will be visible on all Site Collections, and there's no further action required.<br>
If you added it to a page, then you'll need to export the web part definition and import it to every Site Collection web part Gallery.</span>
</li></ol>
<p><strong><span style="font-family:Arial,Helvetica,sans-serif">FAQ:</span></strong></p>
<ol>
<li><span style="font-family:Arial,Helvetica,sans-serif">Q: What if I activate the feature in other Site Collections of the same web app?<br>
A: The root Site Collection list will be ignored. The web part first tries to get the Navigation list from the current site, then works it's way to the root.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Q: What happens when I deactivate the Feature?<br>
A: It will delete the default Navigation list and remove the web part definition from the Gallery.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Q: People see different links, why is that?<br>
A: Because Security Trim is enabled on that link and the person does/doesn't have access.</span>
</li><li><span style="font-family:Arial,Helvetica,sans-serif">Q: Does it work on SharePoint 2013?<br>
A: I've only done minimal testing, and it works except the Feature icon doesn't deploy properly, but you could copy it over manually. Also note that using this web part in 2013 isn't as necessary as 2010 because 2013 has MetaData Navigation.<br>
</span><a href="http://1.bp.blogspot.com/-1CZIHdoXjcQ/UJtIBc7erkI/AAAAAAAAEjg/axsf3vdI8ao/s1600/Capture7.JPG" style="margin-left:1em; margin-right:1em"><img src="http://1.bp.blogspot.com/-1CZIHdoXjcQ/UJtIBc7erkI/AAAAAAAAEjg/axsf3vdI8ao/s320/Capture7.JPG" border="0" alt="" width="320" height="315"></a>
</li></ol>
<p>&nbsp;</p>
<div style="clear:both; text-align:center"><a href="http://4.bp.blogspot.com/--5g5F5aOg28/UJtIBexVlcI/AAAAAAAAEjc/xkFsDooXKoU/s1600/Capture8.JPG" style="margin-left:1em; margin-right:1em"><img src="http://4.bp.blogspot.com/--5g5F5aOg28/UJtIBexVlcI/AAAAAAAAEjc/xkFsDooXKoU/s320/Capture8.JPG" border="0" alt="" width="320" height="113"></a></div>
<p><span style="font-family:Arial,Helvetica,sans-serif"><br>
</span></p>
<ol>
</ol>
</div><div class="ClearBoth"></div>rayoneSat, 10 Nov 2012 23:09:21 GMTUpdated Wiki: Home 20121110110921P