SharePoint 2010:将Web范围的功能限制为特定的网站定义

时间:2011-07-27 16:32:39

标签: sharepoint-2010 site-definition

我为自定义的 Blog 网站定义创建了许多网络范围功能。我的所有功能都可以正常使用,但它们会显示在我网站集中所有网站的“网站功能”页面上 - 而不仅仅是博客。

显然,它们仅与博客相关(因为它们可以执行诸如在博客帖子上启用匿名评论等)。

有没有办法限制某些网络范围功能对特定类型网站(即从特定网站定义创建的网站)的可见性?

1 个答案:

答案 0 :(得分:0)

我认为不可能这样做。

如果您担心人们会从用户界面激活您的功能,则可以隐藏您的功能。

<Feature Hidden="TRUE"></Feature>

然后在您的自定义BLOG站点模板的ONET.xml中,您可以强制在创建站点时激活您的功能。

<Configurations>
    <Configuration>
        <WebFeatures>
            <Feature ID="[Insert GUID of your feature]"/>
        </WebFeatures>
    </Configuration>
</Configurations>

这不会阻止通过STSADM或PowerShell激活该功能。如果你想走那么远,也许你可以为你的功能增加一个功能接收器,以防止它在非BLOG网站上被激活......但这是否真的有必要?