【问题标题】:Content migration from one template to another in Sitecore在 Sitecore 中从一个模板到另一个模板的内容迁移
【发布时间】:2015-07-29 10:19:25
【问题描述】:

我想将属于一个模板的项目内容转移到另一个模板中。

例如,我在第一个模板中有 5 个字段:

  • 标签
  • 图片
  • 下载链接
  • 标题
  • 日期

另一个模板中的 5 个字段:

  • 类型
  • 图片
  • 下载文本
  • 标题
  • 日期

这里的模板中的前两个字段不同,其余 3 个字段相同。

所以我想将属于第一个模板的项目内容迁移到第二个模板。另外,我想强调第二个模板是一个新创建的模板,目前没有从该模板创建项目。所以最终我正在修改 100 个项目的模板。

我尝试覆盖 sitecore TemplateManager.ChangeTemplate(Item item, TemplateChangeList changes) 的更改模板方法,但它清空了字段,而我想保留字段数据。

如果有人对此有任何想法,请提供帮助。

【问题讨论】:

  • 这个操作后,你还需要原来的模板吗?或者如果它在过程中被破坏了可以吗?
  • 理想的原始模板不应受到影响

标签: templates sitecore sitecore7


【解决方案1】:

我认为通过更改模板迁移所有内容不会有太大困难。但是,主要问题是有许多页面项目必须更改为另一个模板。

如果这样做,您可以使用 PowerShellExtension。只需 1 秒。

脚本创意可以从Sitecore Workflow Is Not Working获取

【讨论】:

    【解决方案2】:

    一种解决方案是继承此字段,(使用“基本模板”字段)。

    另一种解决方案是创建您自己的更改模板命令。 您可以在这里找到示例代码:http://sitecore.stockpick.nl/nederlands/dialoge-box-in-een-command/(这是一篇荷兰文章)

    在代码中使用:item.ChangeTemplate(template); 并使用旧模板中已存储的值填写新字段。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-05
      • 2021-06-30
      • 1970-01-01
      相关资源
      最近更新 更多