5

我已经设置了一个内容类型中心,并通过创建一个测试内容类型并观察它被发布到客户端站点来测试联合是否正常工作。

然后,我将我真正感兴趣的内容类型与它们所依赖的站点列一起部署到中心(通过功能)。

我得到错误

Content type '...' cannot be published to this site because feature '...' is not enabled.

我想部署具有可升级性和易于在开发、质量和生产环境之间移植的功能的内容类型。但是我不明白 Hub 的好处是什么。

如果我必须激活部署功能,则内容类型将在发布之前已经存在于网站上。如果我必须使用 Web UI 在 Hub 站点上手动创建内容类型(糟糕!),我会遇到尝试手动保持三个景观同步的问题。

有没有办法在仍然使用 Hub 发布内容类型的同时有效地管理到 Hub 的内容类型部署?

4

3 回答 3

1

使用内容类型中心的优势在于,它允许您在整个场中的多个网站集和 Web 应用程序上使用和重用您的内容类型。

因为您的所有网站集现在都使用相同联合内容类型的实例,所以如果将来您需要在内容类型中添加/删除/重命名列,这与更新内容类型和重新订阅一样容易(然后允许 sharepoint 运行其计时器作业,并仔细检查更改是否已更新,因为您是细心的 SharePoint 管理员)。

我不确定您收到的是哪个错误,您的帖子中根本没有足够的上下文。但是,我认为您可能对如何发布联合内容类型有些困惑。首先,您在网站集上打开内容联合中心发布功能,该网站集包含您将在整个场中重用的所有内容类型。接下来,您配置混合元数据服务,以便 SharePoint 或多或少地将您的每个内容类型“加载到内存中”。

在此步骤之后,您可以选择要订阅联合中心的网站集。为此,您需要打开内容类型发布网站集功能。注意:如果您为您的网站使用空白模板,您可能会收到如您所描述的功能错误,因为空白模板存在“缺陷”。请参阅我的帖子:http ://www.thesharepointblog.net/Lists/Posts/Post.aspx?ID=109

只有在您打开订阅功能、内容类型中心计时器作业已运行且订阅计时器作业已运行后,您的网站集才会看到可用的内容类型。

至于在中心站点上手动创建内容类型,唯一的 OOB 方式是使用 UI。就个人而言,我编写了一个实用程序来完成我刚刚为我描述的所有事情,从创建初始内容类型,到创建联合中心,将它们发布到所有网站集,最耗时的是将它们与所有列表和订阅网站集上的库。我本来打算让我的雇佣公司出售它,但由于他们似乎不感兴趣,如果有足够的兴趣,我可以开源它。

希望这会有所帮助。

于 2012-08-20T19:12:42.157 回答
1

这看起来确实是集线器的一个缺点。我以前亲眼目睹过。

如果您已将内容类型部署到中心,请检查内容类型元素的 INHERITS 标记是否设置为 TRUE。否则它将无法在集线器中工作。

<ContentType ID="xxxxx"
    Name="xxxx"
    Group="xxxx"
    Description="xxxx"
    Inherits="TRUE"
    Version="0">
</ContentType>
于 2012-08-22T11:58:33.503 回答
0

不要忘记您实际上可以在场之间同步内容类型 - 当您在单独的场上进行开发并且不想使用 PnP 框架来管理您的内容类型时,这尤其有价值......在某些情况下,内容类型可能已经存在于生产场中,您需要在开发和/或测试中获得它们的副本。

于 2019-01-17T16:04:03.870 回答