Question

I have created a custom action using Element.xml and deployed via Web Application level scope Feature. Now the custom actions are available in almost 3000 sites under that web application. Business wants to hide these custom actions across all sites.

How to hide these existing custom actions from 3000 sites?

  • Do I need to hide the existing Custom Actions in 3000 sites using Feature Upgrade?

OR

  • Create a new Feature to hide the custom actions. Get the list of sites where the custom actions are used and activate the new feature in all those sites?

Please suggest me the correct approach.

Was it helpful?

Solution

Go for custom Feature upgrade, No doubt in that. Reasons:

  1. Why to have a feature that kills another feature. Extra resource, extra load on SP servers. Not a good solution.

  2. Feature upgrade is easy, reliable and most important back-traceable. you can downgrade this at anytime.

Since you are having 3000+ sites already and there is a chance of new sites/Site collections to be getting added in future. So take a negative approach like "Exclude only those sites where your management doesn't want to keep this custom actions". Because every other newly created site in that webapp will already have custom action.

This MSDN Article has all Whats & Hows of a feature upgrade for SharePoint 2010

Licensed under: CC-BY-SA with attribution
Not affiliated with sharepoint.stackexchange
scroll top