在Sitecore中批量创建项目

时间:2015-06-26 16:44:03

标签: sitecore sitecore-mvc sitecore8

我正在使用Sitecore 8,Update 3。

我正在尝试批量创建使用自定义模板的几千个项目。所有这些项都是在一个特定的父项下创建的。

自定义模板有两个字段,分别是路径[单行文本]和目标[常规链接]。

数据源位于旧的SQL数据库中。

有办法做到这一点吗?

3 个答案:

答案 0 :(得分:2)

Sitecore marketplace module Data Importer是您的选择。

使用sitecore api创建自定义导入程序也是可能的,为了加快速度,可以禁用索引重建。

答案 1 :(得分:2)

由于您的数据已经在SQL Serve中,您应该看一下使用Sitecore的SSIS组件,它是为使用ETL将这类数据批量导入Sitecore而设计的。

您可以在博客帖子Creating your first project with SSIS Components for Sitecore中找到更多信息,Migrating to Sitecore: Going from WordPress to Sitecore with SQL Server Integration Services (SSIS)帖子中还有一些其他信息。

Sitecore市场上提供Integration Services Components for Sitecore,它与Sitecore XP8兼容。

我还要添加,如果您在单个父项下面创建超过100个项目,那么这个is not recommended Sitecore practice除非项目位于项目桶中。确保您考虑到这一点,或将您的项目拆分为较小的子文件夹(例如,新闻文章类型项目的年/月文件夹)

答案 2 :(得分:1)

在这些场景中,您通常最终会编写代码来调用api并以编程方式创建项目,而不是进行通用导入。

如果您需要创建大量项目,我建议您编写一个控制台应用程序来执行此操作。您可以使用Sitecore Item Web API创建Sitecore上下文之外的项目或调查Sitecore中的新实体服务API,两者都能够创建大量的Sitecore项目。

http://mikerobbins.co.uk/2015/01/06/entityservice-sitecore-service-client/

https://sdn.sitecore.net/upload/sdn5/modules/sitecore%20item%20web%20api/sitecore_item_web_api_developer_guide_sc65-66-usletter.pdf

如果这些没有浮动您的船,您可以始终编写异步代码来创建Sitecore项目并由Sitecore实例中的aspx页面执行 - 适用于一次性任务。

Example of Asynchronous page processing in ASP.net webforms (.NET 2.0)