我正在使用Sitecore 8,Update 3。
我正在尝试批量创建使用自定义模板的几千个项目。所有这些项都是在一个特定的父项下创建的。
自定义模板有两个字段,分别是路径[单行文本]和目标[常规链接]。
数据源位于旧的SQL数据库中。
有办法做到这一点吗?
答案 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/
如果这些没有浮动您的船,您可以始终编写异步代码来创建Sitecore项目并由Sitecore实例中的aspx页面执行 - 适用于一次性任务。
Example of Asynchronous page processing in ASP.net webforms (.NET 2.0)