6分钟阅读时间 (1276个单词)

迁移到Joomla 4比您想象的要简单

April-J4Migration

如果您仍在使用Joomla 3,您无疑已经看到了这样的信息:“Joomla 3.10的支持将在2023年8月17日结束”。我上次遇到这种情况是在Joomla 2.5.28时,当时我仔细记录了我的经验,因为更新需要多次尝试,包括关闭“记住我”插件,然后在更新完成后复制库文件。对我来说,这是一个痛苦的过程。

幸运的是,从Joomla 3迁移到Joomla 4已经简化,更新Joomla的痛苦已经消除。通过预更新检查工具增强了体验,该工具检查服务器设置、推荐设置以及扩展是否已准备好新版本的Joomla。

Pre-Update Check For Joomla 4.2.9

升级的好处

迁移到Joomla的新版本不仅是为了与PHP等软件保持最新,避免漏洞,还有数十个功能等待您的到来,您应该阅读它们是什么以及它们可以提供什么。其中一些是工作流程,可以帮助团队更有效地工作,其他则是重新组织的功能,可以帮助您更轻松地管理网站。

新界面

就像搬进新房子一样,新界面需要一点时间来适应。首先,默认情况下,J4中现在所有的菜单都在左边,但没关系,内容、菜单、组件结构是一样的。

我最喜欢的部分变成了系统区域,其中通过操作设置快捷方式,我可以从对应的区域管理、安装、更新或执行维护任务。一旦您意识到“扩展 > 管理”现在是“系统 > 管理 > 扩展”,而“组件 > 重定向”现在是“系统 > 管理 > 重定向”,这就有意义了!

Joomla 4 System Dashboard

迁移清单

迁移您的网站需要计划和纪律。它不应该是一种冲动行为,因为在路上有无数的障碍。例如,您目前在Joomla 3中使用的所有扩展或模板可能都没有更新,其中一些可能已经停止使用。

在进入更新阶段之前,对所有扩展进行审计,并检查开发者网站以查看是否有J4版本可用。列表中值得注意的是K2(https://getk2.org/blog/k2-v2-11-rolling-releases-joomla-4-and-more),如果您无法等待J4版本,可能需要考虑如何将内容转换为文章。

接下来在列表中,您或另一位开发者是否创建了任何自定义模块或组件?Joomla版本之间的主要区别在于使用的类名,但您需要更改自定义代码以在新版本中工作。

注意事项

  • 扩展/插件/包
  • 模板兼容性
  • 自定义编码的扩展
  • 服务器能力(例如,PHP版本)
    • J4的最低要求
    • 您是否与其他网站共享托管?它们是否可以运行在相同的PHP版本上?
    • 新版本的PHP上启用了相同的模块吗?我的版本因为get_magic_quotes()引用而不想在PHP 8.1上工作。

首先在您网站的副本上测试

无论您的网站有多大或多受欢迎,您都希望确保它不会长时间宕机。错误和问题确实会发生,从头开始可能比试图修复一个令人讨厌的问题更容易。

如果您的扩展审计没有发现任何严重问题,那么尝试执行更新步骤。我发现,在安排现场网站的内容冻结之前,多次这样做很有帮助。在理想情况下,即使在更新扩展时,您也可以在30分钟内完成。

备份

在迁移过程中进行备份意味着如果发生任何问题,您可以将迁移回滚到迁移的最后一个良好点,而不是从头开始。一旦将网站上线,请确保始终有一个可以回滚的现场网站版本。

更新前的检查

Joomla 4提供了一个更新的迁移体验,这意味着所有插件和扩展都已测试,以确保它们与新的环境兼容。这包括检查PHP版本和设置。需要关注的扩展被突出显示为“潜在升级问题”,在继续之前,应在开发者的网站上进一步检查这些项目。

将更新前的检查视为您工作的审计,并且很高兴有人支持您。如果您在一个测试版本上执行此检查,如果一切失败,您可以重新开始,而不会破坏您的现场网站。

如果您访问组件 > Joomla更新时看不到最新的Joomla更新,请从选项中选择Joomla Next作为更新频道。

Joomla Update Options

更新扩展并留出时间

对我来说,对Joomla 4进行更新给了我一个机会来审查旧扩展,并可能用更有用的东西来替换它们。例如,我经过了几种表单扩展,并发现至少有一个网站可以在同时更新该功能。

您可能被建议在升级之前禁用某些扩展——“已安装并启用了可能干扰Joomla升级并导致升级失败(导致网站无法访问)的插件。强烈建议在升级之前升级、禁用或卸载这些插件。

我不知道这会不会杀死您的迁移,但在我的一项测试中,我发现我必须更新数据库表并从发现中重新安装缺失的组件。当我禁用扩展时,正如建议的那样,一切都很顺利。

在开发环境中更新,将副本复制到现场

这是迁移Joomla 3网站时的流程。这使停机时间最小化,并且只要您与客户达成一致,在内容不更新的情况下有一个时间窗口,一旦网站在Joomla开发网站上运行正常,并且已经得到客户的批准,下一步就是将其复制到现场网站。

我发现最安全的选项是将所有活文件移动到“安全”文件夹中,然后从开发站点复制所有内容。***在这个阶段,请注意确保您连接到正确的数据库。

Control Panel File Manager

一旦你对所有检查满意,请转到“实时更新”选项卡并查看任何最终警告(“您是否希望忽略有关可能不兼容插件并继续升级的警告?”)。

检查安装后消息

Post-Installation Message

重新启用并更新扩展

某些扩展在您迁移的站点上激活之前可能需要更新,这适用于我管理的网站上 Regular Labs。我为此准备了一个包含更新文件的文件夹。此外,我将已禁用的扩展和插件列表用作在 Joomla 4 中重新启用它们的清单。您可能会发现其他扩展更新出现,并检查发现。您需要检查系统区域以确保任何带有数字的链接。

查看前端

只要您在迁移过程中小心行事,迁移后的网站前端应该看起来与先前版本的前端一样。点击菜单项以确保您的页面如预期显示,并可能进行最后一次备份,以确保安全。

欢迎来到 Joomla 4!

如果您在迁移到 Joomla 4 的过程中保持了自制力并对此过程进行了纪律约束,您应该会发现该过程比预期要容易。毕竟,升级已经走了很长的路,为何要让它变得困难,当新版本中有很多优秀功能时?

《Joomla 社区杂志》上发布的一些文章代表了作者对特定主题的个人观点或经验,可能不符合 Joomla 项目官方立场。

1
玩转 Joomla 网络服务(API) - 第...
Joomla 改进者 - 安全空间
 

评论 3

已经注册? 在此登录
汽油 在 2023 年 4 月 20 日星期四 19:32
对所有客户来说,这次迁移非常困难。

这并不容易,而且这不是升级。这是一次迁移。这真的很让人头疼。幸运的是,所有客户都在支付由此带来的额外费用。迁移、我需要构建的新模板、测试等等,等等。希望从 Joomla 3 迁移到 Joomla 5 会是一次“正常”且简单的升级。

0
这并不容易,而且这不是升级。这是一次迁移。这真的很让人头疼。幸运的是,所有客户都在支付由此带来的额外费用。迁移、我需要构建的新模板、测试等等,等等。希望从 Joomla 3 迁移到 Joomla 5 会是一次“正常”且简单的升级。
Rod Farrell 在 2023 年 4 月 25 日星期二 22:50
迄今为止最简单的迁移

由于我在许多客户网站上完成了从 1.0 到 1.5 的第一次 Joomla 迁移,以及此后的每一次迁移,我可以断言,与 J3 到 J4 的迁移相比,J3 到 J4 的迁移简直是小菜一碟。这并不意味着我没有遇到过问题。通常是由于旧的和不再受支持的扩展。当然,这些扩展应该不再被使用,因为它们不再获得任何安全更新,所以强迫从网站上清理它们是一件好事,尽管有时会有些痛苦。最大的问题是来自没有升级路径的非常复杂的模板。这就是为什么我要建议客户远离复杂的模板框架和拖慢网站速度的现成模板的另一个原因。简单的模板和最小化扩展使用可以使网站更好,升级也更简单。

1
由于我在许多客户网站上完成了从 1.0 到 1.5 的第一次 Joomla 迁移,以及此后的每一次迁移,我可以断言,与 J3 到 J4 的迁移相比,J3 到 J4 的迁移简直是小菜一碟。这并不意味着我没有遇到过问题。通常是由于旧的和不再受支持的扩展。当然,这些扩展应该不再被使用,因为它们不再获得任何安全更新,所以强迫从网站上清理它们是一件好事,尽管有时会有些痛苦。最大的问题是来自没有升级路径的非常复杂的模板。这就是为什么我要建议客户远离复杂的模板框架和拖慢网站速度的现成模板的另一个原因。简单的模板和最小化扩展使用可以使网站更好,升级也更简单。
Dan Atrill 在 2023 年 4 月 26 日星期三 15:36
复杂模板等

希望模板开发人员已经为 J3 到 J4 提供了解决方案。我的经验主要是在 Gantry 和 Yoo Theme 上。Yoo Theme Pro 运作良好。我有一些较老的 Yoo 模板,我认为它们将需要模板迁移。就像你说的,“强迫清理是件好事”!

0
希望模板开发人员已经为 J3 到 J4 提供了解决方案。我的经验主要是在 Gantry 和 Yoo Theme 上。Yoo Theme Pro 运作良好。我有一些较老的 Yoo 模板,我认为它们将需要模板迁移。就像你说的,“强迫清理是件好事”!

通过接受,您将访问由 https://magazine.joomla.net.cn/ 外部第三方提供的服务