更新升级WordPress版本时需要注意的事项
登录 WordPress 网站后台,发现有一个新的 WordPress 版本,直接点击了“立即更新”,然后走出去喝咖啡,回来时发现网站无法加载。
恐慌油然而生。主页一团糟。客户登录失败。支持团队被淹没在主题为“紧急!!”和 “你做了什么?”的电子邮件中。
Source
你就是那个可能在不知情的情况下破坏了网站的人。
但有了本指南,你就不会了。下面介绍如何安全地更新 WordPress 网站,而不会让你的一天变成一场灾难。
为什么要更新 WordPress?
及时更新 WordPress 对网站的安全性、性能和功能至关重要。
- 安全性:每次更新都会修补黑客利用的漏洞。运行一个过时的版本就好比让您商店的前门一夜之间没有上锁。如果发现了安全漏洞,攻击者就可以利用它注入恶意软件、窃取客户数据或完全关闭您的网站。
- 性能:每个新版本都会优化代码、缩短加载时间并提高效率。速度更快的网站意味着访客更开心、跳出率更低,甚至还能提升搜索排名–谷歌更青睐性能良好的网站。
- 功能性:WordPress 的更新会引入新功能、改进块编辑器并增强自定义选项。与时俱进可确保您获得高效运营业务的最佳工具。
- 兼容性:如果您的核心软件已经过时,一些插件可能会停止工作或导致冲突。保持更新可防止故障发生,并保持网站顺利运行。
为什么不直接点击“立即更新”按钮?
您可以这样做,而且通常情况下,更新会很顺利。但是,如果您的网站上有很多插件和主题定制,那么更新时损坏网站的几率就会更高。
最常见的问题是宕机。如果更新导致网站崩溃,即使是几个小时的宕机也可能意味着收入损失、错过预订和客户失望。对于依赖在线线索的电子商务商店或服务型企业来说,这种影响甚至更为严重。
当您有许多插件时,更新可能会影响更多元素。例如,更新可能会做出几处重大改动(如 WordPress 6.0 更新,其中包括 1,000 多处修复),可能会导致旧插件或主题失灵。一些重要的网站功能(如结账页面或联系表单)可能会突然停止工作。
许多小企业会根据自己的需要调整主题和插件,但如果不是使用子主题,一些主题更新可能会覆盖你的自定义设置 。
对于没有专业技术知识的人来说,还担心出了问题不知道如何修复。如果更新将你锁定在网站之外,或导致你无法解决的错误,你可能需要聘请专家–这是意想不到的成本和延误。
这些风险是真实存在的,但通过正确的更新策略是可以避免的。下面是一些需要遵循的预防步骤。
安全更新WordPress的步骤
更新的成功与否并不取决于您点击更新按钮时的操作,而是取决于您在更新前所做的准备工作。
以下是在不同类型的 WordPress 网站中始终有效的流程:
1. 查看更新发布说明
切勿漫不经心地更新。当您在仪表板上看到更新信息时,首先要做的是阅读 WordPress 6.7 核心、插件和主题的更新日志。
开发人员会强调漏洞修复、安全补丁和兼容性更改。如果更新引入了破坏性更改,您可以做好相应的准备,或者推迟更新直到补丁发布。这也将帮助您学习 WordPress,了解您以前可能不知道的内部工作原理和功能。
2. 创建完整备份
每次更新都有一定程度的风险。如果出现故障,备份可以让您立即恢复网站。由于通常是插件和主题与更新发生冲突,因此完整备份可帮助您在出现问题时立即恢复网站。
您应该有
- 数据库备份:您的内容、用户和设置;以及
- 文件备份:主题、插件、媒体文件和配置。
最简单的方法就是使用像 UpdraftPlus 这样可靠的备份插件。
它还能让你在网站更新前自动备份,确保一切正常。
安装完成后,将其设置为将备份存储在 Google Drive、Dropbox 或外部服务器等安全位置。
为确保备份成功,请下载并检查备份压缩文件中的文件。
3. 建立暂存网站
即使有备份,我们也不建议在实时网站上更新。
暂存环境是实时网站的克隆,允许您在应用更新前进行测试。如果您的主机提供商不提供这种环境,请使用 WP Staging 或创建一个单独的子域进行测试。
如何创建暂存网站?
- 如果你的虚拟主机提供暂存功能,你只需在仪表板上启用即可。
- 如果没有,请使用 WP Staging 或手动将网站克隆到一个子域。
- 将最新备份导入到暂存网站。
进入暂存环境后,更新 WordPress 核心、插件和主题,然后彻底测试网站功能。查看浏览器控制台中是否有布局损坏、内容缺失和错误。如果有任何问题,您可以在这里排除故障,而不会影响您的实时网站。
测试一切正常后,您就可以放心地更新真实网站了。
4. 禁用缓存和安全插件
缓存和安全插件会干扰更新。有些插件会阻止更新请求,导致部分安装。还有一些插件会缓存过期文件,导致更改无法立即显示。
有些安全插件也会阻止更新进程,导致安装不完整。
暂时禁用 WP Rocket 或 W3 Total Cache 等缓存机制,并暂停 Wordfence 等安全防火墙,以防误报。
禁用缓存:
- 如果使用的是 WP Rocket,请进入设置>WP Rocket 并禁用缓存。
- 对于 Litespeed Cache,请导航至插件 >停用,暂时停用缓存。
你还需要停用安全插件,以免破坏更新:
在相应设置下停用 Wordfence 或 Sucuri 等防火墙插件。
更新完成后,你可以逐个重新启用它们,同时确保其中一个插件不会导致冲突。
现在您可以安全运行 WordPress 核心更新了!
5. 更新插件
进入控制面板>更新,检查哪些插件有可用更新。
您应该会在任何有可用更新的插件下方看到一个黄色条。点击“立即更新”按钮进行更新。
您还可以选中左侧要更新的插件的复选框,运行批量更新。
然后单击“批量操作”下拉菜单,选择“更新”。然后点击应用。
每次更新后进行测试,确保网站仍能正常运行。
如果更新破坏了某些功能,请使用 WP Rollback 或从备份恢复。
6. 更新主题
导航至“外观”>“主题”,检查可用更新。
如果您自定义了主题,请确保在更新前使用了子主题。有可用更新的主题会显示出来,你可以点击“立即更新”按钮完成更新。
更新后,检查是否有任何布局破损或样式缺失,如有需要,请恢复备份或手动重新应用自定义设置。
7. 更新 WordPress 核心
更新 WordPress 有三种常用方法:
- 通过仪表板一键更新 WordPress: 只需点击“立即更新”按钮,WordPress 就会在幕后处理一切。不过,您仍需遵循本文概述的预防步骤。
- 通过 FTP 手动更新:从 WordPress.org 下载最新版本,通过 FTP 上传,替换核心文件,同时排除 “wp-content ”以保留主题和插件。
- WP-CLI 更新:对于高级用户,可通过命令行运行“wp-core update”。
我们建议使用一键更新。更新前,请禁用缓存插件以防止冲突:
进入“控制面板” > “更新”,然后单击“更新到版本<版本号>”。
准备就绪后点击 WordPress 面板中的立即更新。
在整个更新过程中,请留意您的网站。如果卡住了,请刷新控制面板或检查文件权限问题或其他可能出现的错误。
发布更新WordPress核心、插件和主题的信息
您的更新已经完成,但工作还没有结束。在假定一切运行顺利之前,您需要采取几个最后步骤来确保网站的稳定性、性能和安全性。
1. 清除缓存
缓存通过提供已存储的网页版本来加快网站速度,而不是动态加载所有内容。
但是,更新后,过时的缓存文件可能会导致显示问题、布局破损或旧脚本与新代码冲突。
为防止出现这种情况,请清除多个级别的缓存:
- WordPress 缓存:如果使用 WP Rocket 或 W3 Total Cache 等缓存插件,请从其设置中清除所有缓存。
- 服务器缓存:一些托管服务提供商有内置的服务器端缓存,可以帮助你加快网站速度。更新后,请确保同时清除服务器端缓存。
- CDN 缓存:如果使用 Cloudflare 等内容分发网络(CDN),请登录并清除缓存文件,以确保访问者看到的是最新版本的网站。
- 浏览器缓存:鼓励访客和团队成员硬刷新(Ctrl + Shift + R 或 Cmd + Shift + R )以加载新内容。
清除缓存后,重新加载网站并验证更新后的样式、脚本和功能是否与预期一致。
2. 检查功能是否损坏
尽管您已在暂存网站上测试了所有功能,但仍需在正式网站上重新进行全面检查。确保最重要的功能按预期运行。
这些功能包括
- 联系表单
- 电子商务结账流程
- 自定义脚本
- 用户登录
一旦知道这些功能运行正常,就可以继续测试网站的其他非关键功能和页面。之后,您可以开始逐个重新启用缓存和安全插件,这样如果网站出现故障,您就知道是哪个插件导致了冲突。
3. 监控网站错误
更新上线后,真正的考验才开始。即使最初看起来一切正常,错误也可能在之后出现,从而影响用户体验、网站速度或搜索排名。
及早发现问题:
- 使用 Google Search Console 检查抓取错误、链接中断或索引问题。
- 设置 New Relic 或 Query Monitor,跟踪缓慢的查询、PHP 错误和服务器响应时间。
- 您还可以使用 UptimeRobot 在网站更新后出现宕机时获取警报。
- 请真实用户报告问题,因为自动测试并不总能捕捉到所有问题。
如果发现问题,请检查错误日志,并使用备份回滚有问题的更新。
出错了?常见 WordPress 更新错误的故障排除
即使采取了预防措施,还是有可能出错。以下是如何修复最常见的更新问题:
白屏死机
您的网站加载了一个空白的白色屏幕,没有任何错误信息。出现这种情况通常是由于插件、主题或内存问题造成的 PHP 冲突。
- 停用插件:通过 FTP 访问网站。进入“/wp-content/plugins/”并重命名文件夹,停用所有插件。如果网站返回,重命名该文件夹并逐个启用插件,以找到罪魁祸首。
- 切换到默认主题:重命名“/wp-content/themes/”中的主题文件夹,强制 WordPress 使用默认主题,如“Twenty Twenty-Four”。
- 增加内存限制:编辑 “wp-config.php ”并添加
define(‘WP_MEMORY_LIMIT’, ‘256M’);
陷入维护模式
如果网站显示 “因计划维护短暂不可用”,说明 WordPress 没有完成更新。
您可以使用 FTP 删除网站根目录中的“.maintenance 文件”,这样您的网站几乎马上就能恢复。
插件或主题冲突
更新后,网站的某些部分会停止工作,这通常意味着插件或主题与新版本不兼容。
- 回滚到以前的版本: 如果怀疑是某个插件的问题,可使用 WP 回滚插件恢复到旧版本。
- 检查更新: 有些开发人员会快速发布补丁。再次更新可能会解决问题。
- 寻找替代品: 如果一个插件没有得到维护,考虑换一个更可靠的选择。
数据库连接错误
您的网站显示“建立数据库连接错误”,这意味着 WordPress 无法与数据库通信。
- 检查 wp-config.php: 检查数据库名称、用户名、密码和主机是否正确。
- 修复数据库: 在“wp-config.php”中添加
define(‘WP_ALLOW_REPAIR’, true);
,然后访问 “yoursite.com/wp-admin/maint/repair.php ”并运行修复。
何时请专家帮忙
如果您已尝试排除故障,但您的网站仍然瘫痪,或者如果您自己不方便进行这些修复,那么是时候请专业人士帮忙了。
- 向您的主机提供商咨询:许多主机提供 WordPress 支持,可以恢复备份或识别与服务器相关的问题。
- 聘请 WordPress 专家:开发人员可以快速诊断并修复非技术用户可能需要数小时才能解决的问题,比如闪电博提供的专业 WordPress 技术服务。
- 使用 WordPress 社区: 论坛和群组通常有常见问题的解决方案,而且可能有人曾经遇到过确切的问题。
WordPress 是最流行的内容管理系统之一。这意味着,如果你遇到问题,互联网上会有人帮你解决。不过,这仍然需要你在更新前采取预防措施。
防止崩溃的最佳做法
- 使用子主题:直接自定义父主题会给更新带来风险。始终使用子主题来保留修改并防止覆盖。
- 限制插件的使用:更多的插件意味着更多的潜在冲突。坚持使用维护良好、使用广泛、更新频繁、支持积极的插件。
- 推迟重大更新:新发布的 WordPress 版本可能存在尚未发现的错误。可以考虑等待几天,以便开发人员针对早期问题发布补丁。
- 选择优质的主机提供商:托管的 WordPress 主机可提供自动备份、暂存环境和更新期间的专家支持,从而降低风险并缩短停机时间。
- 启用自动备份:即使您的主机提供商提供每日备份,但额外的备份策略也能确保在发生故障时的冗余。
小结
WordPress 的更新并不一定会给您带来压力。
有了正确的方法,您就可以确保安全性、稳定性和性能,而不必冒停机的风险。但是,如果你想跳过技术上的麻烦,WordPress托管解决方案是一个更简单的选择。
另外,您可能希望了解更新 WordPress 主题最佳办法或安全正确地更新 WooCommerce。