我知道如何部署CSS,JavaScripts,图像等的主页和样式,我的问题是最好的做法?

当我通过站点集合范围特征部署样式库等的站点集合上的所有必需品。 激活此功能将激活此站点集合上的样式。所以对于风格库中的每个站点集合,将创建这些文件。

但在母版页中,我也可以引用根本集合的所有CSS注册和图像等,这种方式只有激活根网站集的功能将在应用母版页面时将aslo影响其他站点集合,而我只将在根网站集合式库上有这些文件。

我在犹豫不决,当然只有在根网站集上激活,将减少门户网站中的文件量,但仍然... 当然,通过这样做,我将在所有网站集合中的各个布局和样式,但也是我想要实现的。

所以我应该只在根网站集上部署,或者每个站点集合不同?

有帮助吗?

解决方案

由于您已将您的品牌元素打包,包括母版页,CSS,图像,JS等,然后我建议您在每个站点集合中激活此功能(根网站和子站点集合,即yydomain / sites / subsite1)。该功能应包括要传输_catalogs / masterpage资产和至少另一个模块来传输样式库资产的模块。由于您正在使用任何功能,任何时候您更新了品牌,那么该功能应该处理更新资产,并且您可以使用PowerShell强制升级到所有网站集。

是的,这意味着每个站点集合将包括所有品牌元素,但每个站点集合都需要至少包含母版本资产。对于风格库,您可以始终将这些元素放在14个Hive(_Layouts)中。在您的案例中,这将是它们的最佳位置。

如果您只想只有一个样式库资产副本,只需在根网站集中,那么您很可能需要有两个功能,一个安装主页的一个功能,另一个要安装样式库资产。在所有站点集合上激活主页页面功能,但样式库仅在根网站集上。然后设置主页才能始终引用根网站集格式库。但如果你这样做,那么你为什么要使用一个功能,你就是让自己更困难。

我希望这有帮助。

其他提示

我相信这里的问题需要清除“根网站集合与其他站点集合”的问题,因为每个站点集合都是一个隔离边界,它是根本的。基本上,在站点收集级别部署的实践(例如,使用样式库)是一个推荐的实践,并且它也遵循与站点集合本身相同的隔离单元。

如果您考虑了比此模型的沙箱解决方案也适合。当您需要更改母版页面,已经使用的页面布局时,唯一的缺点是在所有网站集合中更新。

许可以下: CC-BY-SA归因
scroll top