如何防止WP-CLI外壳在出现异常时退出?

时间:2016-11-28 作者:Damien Roche

我正在使用WP-CLI shell快速调试一些代码,但每次遇到fatal 异常(例如,未定义的常量/函数)shell退出,我丢失了shell会话。有没有办法防止这种情况?

wp> new DoesntExist();
Fatal error: Class \'DoesntExist\' not found in phar:///usr/local/bin/wp/php/WP_CLI/REPL.php(37) : eval()\'d code on line 1
外壳退出。。

1 个回复
SO网友:TheSpend

这是WP-CLI内置PHP REPL的默认行为。如果你看看wp shell documentation, 这表明您还可以使用Boris或PsySH PHP REPL。

这个Boris REPL 似乎没有积极维护;然而PsySH REPL 最近进行了维护,它修复了您遇到的问题。

最简单的集成方式PsySH 具有WP-CLI 是使用wp-cli-psysh 插件:

# Make sure WP-CLI is up to date
wp cli update

# Install the plugin
wp package install [email protected]:schlessera/wp-cli-psysh.git
安装插件后,运行wp shell 应显示类似于以下内容的PsySH标题:

$ wp shell

Psy Shell v0.9.9 (PHP 7.3.1-1+ubuntu18.04.1+deb.sury.org+1 — cli) by Justin Hileman

>>>

相关推荐

WP-CLI插件安装导致PHP致命错误-在不在对象上下文中时使用$This

运行时sudo wp install plugin pluginname --allowroot它会导致错误:PHP致命错误:未捕获错误:在/var/www/html/wp-content/plugins/pluginname/blocks中不在对象上下文中时使用$this。菲律宾比索:89我们有一个自定义插件,其中包含以下内容: class Block{ public static function Run() { add_action(\'e