有没有办法在Ektron中批量迁移线框模板?

时间:2017-07-11 16:46:20

标签: ektron

我们有数十个内容页面使用的十几个自定义PageBuilder线框模板。我们希望将所有内容从旧的线框模板迁移到新的线框模板。我最初想过通过SQL手动更新内容数据库来做到这一点,但我不确定这是否是一种安全的方法。另外,它涉及一些棘手的SQL,在文本字段中使用encoded-xml-embedded-in-xml。真正丑陋的东西。

有谁知道最好的方法吗?

1 个答案:

答案 0 :(得分:0)

首先提出一点意见......

成千上万的线框似乎很多。这对您的言论毫不怀疑,而不是大多数Ektron客户不需要那么多基于PageBuilder的页面的声明。如果您正在使用PageBuilder创建常规内容页面(HTML或智能表单),例如新闻稿,博客文章或类似内容,那么您可能需要重新考虑该策略。对于大多数作者而言,PageBuilder很难,对于不需要大量布局更改的页面,它可能会导致编写过程中的大量开销以及迁移困难(咳咳......)。值得深思。最好将您的Widgets中的内容迁移到Smart Forms,使用ContentType方法,以及开发普通的旧.NET WebForms模板。

现在......已经有一段时间了,因为我已经深入研究了其中一些。我也没有任何Ektron的本地实例可以玩了,所以请耐心等待。我将在这里转发的大部分内容都是为了挖掘未使用2年以上的知识。

正如您所说,PageBuilder在数据库中表示为XML。此外,Ektron DB非常庞大而且复杂。进行这两种操作既具有挑战性又具有风险,后者尤其在SQL方面。因此,如果有一种方法可以在严格操作XML并避免SQL部分的情况下进行处理,那么这将是我的第一个目标。

需要注意的是,PageBuilder只是内容。这意味着您可以使用标准Content API访问XML数据(适用于您的Ektron版本,您不会在上面说明......)。我不知道您是否能够创建一个新的页面作为PageBuilder布局。值得一试。

还有一组您可能可以使用的未记录的API /方法仅适用于PageBuilder 。您可以在工作区中找到PageBuilder功能作为用户控件 - 这些代码背后的代码未编译。当我为PageBuilder Bootstrap支持构建第一个原型(最终在8.7中预发布并重新设计为9.0)时,我实际上使用了该信息作为参考资料。这些控件应该向您展示有关PageBuilder如何工作的更多信息,并可能帮助您创建窗口小部件实例和分配。