在保留内容的同时重构 Drupal 站点

Posted

技术标签:

【中文标题】在保留内容的同时重构 Drupal 站点【英文标题】:Refactor Drupal site while preserving content 【发布时间】:2015-03-20 12:55:44 【问题描述】:

我的两难境地:我的小团队一直忙于重构/重新设计一个相当大的 Drupal 站点。该网站充斥着未使用的模块和内容类型、CSS/JS/html/etc hack,并且有无数奇怪的外部数据导入解决方法。我目前是团队唯一的后端开发人员,我们的 Drupal 专业知识是初学者水平。我们无法构建自定义 CMS,因为该站点的内容量与 Drupal 数据库结构的复杂性相结合,无法可靠地导出它;此外,每天都会不断添加和修改内容。

我的问题:是否有任何最佳做法、提示、建议或任何人可以提供的任何建议可以帮助我们尝试重构此网站?

具体...

    检测、禁用、卸载和删除未使用的模块并在之后进行 QA。 更新模块和质量检查(系统方法?)。 检测和删除未使用的内容类型。 检测和删除未使用的 php 代码(主要是 tpls)。 检测并删除未使用的 CSS/JS。

【问题讨论】:

【参考方案1】:

在模块后端页面上,您会显示每个模块的依赖关系。是否有其他模块使用它以及当前模块使用的其他模块。因此,如果您发现该模块没有被任何其他模块使用并且不需要它的功能,您可以尝试先禁用它,检查一切是否正常,最后删除该模块。

关于内容类型 - 转到内容,检查是否存在您怀疑不需要的特定内容类型的某些节点。如果有该类型的节点,请尝试查看它们。如果它们的样式不好……可能是它们没有被使用/不需要。

Php - 嗯...你可以添加一些代码行,写出一些东西,或者甚至将一些文本保存到文件中,然后打开页面......看看你是否会得到一些输出或保存到的东西你的文件。您甚至可以调用exit() 函数并检查它是否会破坏网站。

与 JS 类似 - 提醒某些内容或写入控制台以查看它是否会被调用。

最重要的是 - 首先备份所有文件和数据库!

【讨论】:

以上是关于在保留内容的同时重构 Drupal 站点的主要内容,如果未能解决你的问题,请参考以下文章

重构篇

Drupal 模块设置页面构建

七年三次大重构,聊聊我的重构成长史

为什么要持续重构

为什么服务需要持续重构

在生产中重构数据库的最佳实践?