【问题标题】:Sitecore - How to import content?Sitecore - 如何导入内容?
【发布时间】:2019-04-23 18:19:45
【问题描述】:

因此,我接到了一项新任务,将内容从网站导入到使用 Sitecore CMS 构建的新网站。我的客户基本上正在进行改造。以前的网站是使用非常旧的 CMS 构建的,并且所有内容都是 HTML 格式。我实际上正在考虑抓取旧网站并将所有内容转储为 csv 格式左右...但我需要知道..

  1. Sitecore 是否在 CMS 或 Web 服务中提供了导入外部数据的功能?
  2. 如果是,是什么格式(csv、xml)?
  3. 如果没有,请问是否有替代方案或插件?

文档太多了,我真的很困惑从哪里开始。我希望我不必为此编写脚本。

如果你们中的任何人都这样做过,如果你能分享你的经验,那就太好了。

谢谢。

【问题讨论】:

    标签: sitecore


    【解决方案1】:

    好的,这是一个好消息/坏消息的情况。

    Sitecore 没有标准的“导入”工具,您很可能必须编写 C# 脚本来导入您的内容。 Sitecore 允许您定义任意数量的数据结构(模板)来塑造您网站所需的内容类型,因此用于从 CSV/XML 等导入的工具将很难完成,因为有很多不同的可能性新网站的结构和可能使用的功能。

    好消息是,Sitecore 有一个非常强大的 C# API,它使处理数据变得非常简单,我建议您查看诸如 Content API Cookbook on SDN 之类的说明书。这包含有关使用模板、项目和可用的不同字段类型的信息。

    您需要编写的脚本不需要非常复杂,但是以这样的方式运行迁移可以让您有额外的空间来执行以下操作:

    • 从内容中剥离 HTML 标签。 (我建议使用 HtmlAgility)
    • 在链接标签中跟踪/重新映射到旧页面的链接。
    • 删除对图像的引用或重新映射到新路径或对媒体库的引用。
    • 充分利用 Sitecore 的不同字段类型

    我假设您尚未完成任何 Sitecore 培训,我会将其作为优先事项,以便您了解 Sitecore 中数据和内容的结构。

    在这种情况下没有灵丹妙药,但根据我的经验,编写这些小脚本并不费时,并且允许您处理内容迁移带来的通常复杂的需求。

    希望这会有所帮助。

    【讨论】:

    • 实际上有两个共享源迁移/导入工具,但我没有使用过它们,并且总是为我正在处理的特定站点编写自己的迁移。正如 Stephen 所提到的,一般用途的导入实用程序通常需要太多的自定义来 100% 地工作。 trac.sitecore.net/DataImporter & trac.sitecore.net/XmlImporter
    • 我不敢相信这会很痛苦...Sitecore 应该提供一种更简单的方式来导入或迁移数据。我将首先尝试替代方案,希望这对我的情况有用。谢谢大家!
    • 斯蒂芬·波普在这里一针见血。您需要自定义脚本,因为您需要能够正确地构造数据。如果您不花时间这样做,您将在十倍之后为它付出代价,并且您的解决方案将首先失去使用 Sitecore 的大部分好处。一旦您获得了良好的数据结构并映射到原始数据,那么 API 将使这变得相当简单。
    【解决方案2】:

    聚会迟到了 6 年,但如果我以外的任何人都被这个问题绊倒了,我强烈推荐 Sitecore Powershell 扩展:https://marketplace.sitecore.net/en/Modules/Sitecore_PowerShell_console.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多