【问题标题】:SharePoint 2010: Limiting web-scoped features to specific site definitionsSharePoint 2010:将 Web 范围的功能限制为特定网站定义
【发布时间】:2011-07-28 02:40:27
【问题描述】:

我为我的自定义博客网站定义创建了许多网络范围的功能。我的所有功能都运行良好,但是它们出现在我的网站集中所有网站的“网站功能”页面上——不仅仅是博客。

显然它们只与博客相关(因为它们会在博客帖子上启用匿名 cmets 等操作)。

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

【问题讨论】:

    标签: sharepoint-2010 site-definition


    【解决方案1】:

    我认为不可能这样做。

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

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

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

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

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

    【讨论】:

    • 感谢您的反馈@MLF。将所有功能都显示在所有站点上并不会导致我出现任何逻辑错误,它只会给站点功能页面增加很多“膨胀”。我想还有一个风险是网站贡献者之一可能会激活“不适用”功能,这可能会更改/损坏系统文件或数据。
    猜你喜欢
    • 1970-01-01
    • 2019-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多