将网站转换为Drupal - 噩梦已经开始

时间:2011-03-10 12:29:11

标签: php mysql drupal

我正在尝试将网站www.mircscripts.org转换为Drupal,并且越来越多地研究迁移我越来越困惑。

有许多模块可以帮助迁移过程,但这些模块只会令人困惑,而且都缺乏。文档(听取迁移模块!)或b。只支持Drupal 6。

迁移模块您似乎不得不深入研究PHP代码并为旧表数据和Drupal创建一些“映射”。首先,我理想地喜欢GUI(Table Wizard似乎只支持Drupal 6,而且取代的Data模块也只支持Drupal 6)。我还想将数据导入Drupal而不使用“映射”。我希望能够在所有数据“转换”为Drupal节点兼容后禁用Migrate模块。

如果你看看上面的网站,你几乎可以看到数据,论坛,评论等的规模,并了解数据库表的外观,只是你常用的东西;用户,评论以及更多自定义内容,例如“文件”,用于存储用户上传的所有不同脚本。

关于如何转换网站的任何建议?

干杯

加里

编辑:我忘了提到该网站几乎完全是定制的。它的代码在去宾果游戏的过程中看起来像我的南 - 一团糟。如果向下滚动,http://drupal.org/node/261066会提供一些有趣的代码,尽管我不想为每个记录执行node_save() 60,000次,只有一个表。这听起来很邪恶。

3 个答案:

答案 0 :(得分:3)

迁移模块附带了一个示例迁移模块和一些便于内容迁移的文档。数十个网站利用它来实现迁移。它不是一个GUI点和点击,但非常灵活,可以重复测试。

在此之前我已经编写了自己的模块进行自定义迁移,并且它没有听起来那么糟糕。您只需要知道模式如何关联并将其映射到纸上,然后进行伪代码和测试。

对于www.dogfish.com,我迁移了12,000个节点。对于我试图重新启动的乐队网站,我已经迁移了75,000多个节点。我使用db连接和cron两种方法来获得下一个X结果。我本可以使用BatchAPI,但这看起来更慢。

迁移模块是可行的方法。

答案 1 :(得分:2)

看一下Feed。它是一个GUI导入器,允许您将文件中的字段映射到节点等对象。

http://drupal.org/project/feeds

对于表中的所有行,node_save没有任何恶意。这基本上是任何导入模块应该做的事情。我参与了一个巨大的d5项目,我们以这种方式导入了数百万个节点。它工作正常。

有些人建议直接保存到数据库。永远不要那样做。这不是创建节点的正确方法。使用Drupal API!

答案 2 :(得分:-2)

因为我在drupal上度过了多年。我没有看到任何完整的迁移模块。它更好地开始编码,它将节省时间和聪明的想法:)