Sitecore 中从一个模板到另一个模板的内容迁移
Content migration from one template to another in Sitecore
我想将属于一个模板的项目内容转移到另一个模板中。
例如,我在第一个模板中有 5 个字段:
- 标签
- 图片
- 下载link
- 标题
- 日期
和另一个模板中的 5 个字段:
- 类型
- 图片
- 下载文本
- 标题
- 日期
此处前两个字段在模板中不同,其余 3 个字段相同。
所以我想将属于第一个模板的项目内容迁移到第二个模板。另外,我想强调第二个模板是一个新创建的模板,目前没有创建该模板中的任何项目。所以最终我正在修改 100 项的模板。
我尝试覆盖 sitecore TemplateManager.ChangeTemplate(Item item, TemplateChangeList changes)
的更改模板方法,但它清空了字段,而我想保留字段数据。
如果有人对此有任何想法,请帮助。
一个解决方案是继承这个字段,(使用 "Base template" 字段)。
另一个解决方案是创建您自己的更改模板命令。
您可以在此处找到示例代码:http://sitecore.stockpick.nl/nederlands/dialoge-box-in-een-command/(这是一篇荷兰语文章)
在代码中使用:item.ChangeTemplate(template);
并使用旧模板中已存储的值填写新字段。
我认为通过更改模板迁移所有内容不会有太大困难。但是,主要问题是有许多页面项目必须更改为另一个模板。
如果这样做,您可以使用 PowerShellExtension。只需1秒
您可以从
获取脚本创意
我想将属于一个模板的项目内容转移到另一个模板中。
例如,我在第一个模板中有 5 个字段:
- 标签
- 图片
- 下载link
- 标题
- 日期
和另一个模板中的 5 个字段:
- 类型
- 图片
- 下载文本
- 标题
- 日期
此处前两个字段在模板中不同,其余 3 个字段相同。
所以我想将属于第一个模板的项目内容迁移到第二个模板。另外,我想强调第二个模板是一个新创建的模板,目前没有创建该模板中的任何项目。所以最终我正在修改 100 项的模板。
我尝试覆盖 sitecore TemplateManager.ChangeTemplate(Item item, TemplateChangeList changes)
的更改模板方法,但它清空了字段,而我想保留字段数据。
如果有人对此有任何想法,请帮助。
一个解决方案是继承这个字段,(使用 "Base template" 字段)。
另一个解决方案是创建您自己的更改模板命令。 您可以在此处找到示例代码:http://sitecore.stockpick.nl/nederlands/dialoge-box-in-een-command/(这是一篇荷兰语文章)
在代码中使用:item.ChangeTemplate(template);
并使用旧模板中已存储的值填写新字段。
我认为通过更改模板迁移所有内容不会有太大困难。但是,主要问题是有许多页面项目必须更改为另一个模板。
如果这样做,您可以使用 PowerShellExtension。只需1秒
您可以从