You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Plesk提示部分项更新失败,WordPress Toolkit报错求助

Plesk WordPress Toolkit更新失败问题排查与解决

问题背景

昨天收到Plesk邮件,提示服务器上的WordPress Toolkit相关更新无法安装。使用的是Ionos托管的Plesk界面,网站可正常运行,但该错误导致更新流程中断。曾怀疑问题与Plesk Web Pro服务器启用mysqli有关,但未找到操作路径,也无法确认关联度。

报错详情

PHP Fatal error: Uncaught TypeError: date(): Argument #2 ($timestamp) must be of type ?int, string given in /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php:418
Stack trace:
#0 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(418): date()
#1 [internal function]: Cron_Event_Command::format_event()
#2 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(460): array_map()
#3 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(366): Cron_Event_Command::get_cron_events()
#4 [internal function]: Cron_Event_Command->delete()
#5 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(100): call_user_func()
#6 [internal function]: WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher{closure}()
#7 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(491): call_user_func()
#8 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(419): WP_CLI\Dispatcher\Subcommand->invoke()
#9 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/class-wp-cli.php(1443): WP_CLI\Runner->run_command()
#10 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/plesk/wp-cli-toolkit-command/src/Wpt_Cron_Command.php(30): WP_CLI::run_command()
#11 [internal function]: Wpt_Cron_Command->reschedule()
#12 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(100): call_user_func()
#13 [internal function]: WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher{closure}()
#14 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(491): call_user_func()
#15 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(419): WP_CLI\Dispatcher\Subcommand->invoke()
#16 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(442): WP_CLI\Runner->run_command()
#17 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1276): WP_CLI\Runner->run_command_and_exit()
#18 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php(28): WP_CLI\Runner->start()
#19 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/bootstrap.php(78): WP_CLI\Bootstrap\LaunchRunner->process()
#20 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/wp-cli.php(32): WP_CLI\bootstrap()
#21 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/boot-fs.php(17): require_once('...')
#22 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/wpt-wp-cli.php(31): require_once('...')
#23 {main}
thrown in /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php on line 418
Fatal error: Uncaught TypeError: date(): Argument #2 ($timestamp) must be of type ?int, string given in /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php:418
Stack trace:
#0 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(418): date()
#1 [internal function]: Cron_Event_Command::format_event()
#2 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(460): array_map()
#3 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(366): Cron_Event_Command::get_cron_events()
#4 [internal function]: Cron_Event_Command->delete()
#5 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(100): call_user_func()
#6 [internal function]: WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher{closure}()
#7 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(491): call_user_func()
#8 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(419): WP_CLI\Dispatcher\Subcommand->invoke()
#9 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/class-wp-cli.php(1443): WP_CLI\Runner->run_command()
#10 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/plesk/wp-cli-toolkit-command/src/Wpt_Cron_Command.php(30): WP_CLI::run_command()
#11 [internal function]: Wpt_Cron_Command->reschedule()
#12 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(100): call_user_func()
#13 [internal function]: WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher{closure}()
#14 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(491): call_user_func()
#15 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(419): WP_CLI\Dispatcher\Subcommand->invoke()
#16 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(442): WP_CLI\Runner->run_command()
#17 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1276): WP_CLI\Runner->run_command_and_exit()
#18 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php(28): WP_CLI\Runner->start()
#19 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/bootstrap.php(78): WP_CLI\Bootstrap\LaunchRunner->process()
#20 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/wp-cli.php(32): WP_CLI\bootstrap()
#21 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/wp-cli/php/boot-fs.php(17): require_once('...')
#22 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/wpt-wp-cli.php(31): require_once('...')
#23 {main}
thrown in /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/wp-cli/vendor/wp-cli/cron-command/src/Cron_Event_Command.php on line 418
Error: There has been a critical error on this website.Learn more about troubleshooting WordPress. There has been a critical error on this website.

问题原因

核心错误是date()函数接收的时间戳参数类型不匹配:要求整数或null,但实际传入了字符串。这个问题出在WP-CLI的Cron命令模块中,说明目标网站的WordPress定时任务(Cron)里存在异常数据——某个Cron事件的时间戳被存储为字符串格式,导致WP-CLI处理时触发类型错误,进而中断WordPress Toolkit的更新流程。该问题与mysqli无关,无需在此方向排查。

解决办法

1. 修复异常的Cron事件

  • 通过Plesk界面操作:登录Plesk后台,找到对应网站的WordPress Toolkit,进入「工具」→「Cron任务」,检查所有任务的下次执行时间,删除或重新创建时间显示异常的任务。
  • 通过WP-CLI操作:连接服务器终端,切换到网站根目录后执行:
    wp cron event list
    
    找到时间格式异常的事件,执行删除命令:
    wp cron event delete [事件名称]
    
  • 通过WordPress插件操作:安装WP Crontrol等可视化Cron管理插件,进入插件后台删除异常的定时任务。

2. 更新WordPress Toolkit及组件

  • 在Plesk后台的「扩展」→「已安装扩展」中,找到WordPress Toolkit,点击更新到最新版本。
  • 若更新仍失败,尝试先禁用再重新启用WordPress Toolkit扩展,清除缓存后再次尝试更新。

3. 验证PHP版本兼容性

  • 检查网站使用的PHP版本,确保与当前WordPress、WordPress Toolkit版本兼容(推荐PHP 7.4及以上版本,避免旧版本的类型严格性问题)。可在Plesk的网站设置中调整PHP版本。

内容的提问来源于stack exchange,提问作者toprobroy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 15:25:10