可以在插件(或主题)中使用WP-CLI吗?

时间:2018-09-08 作者:Youichi Okada

是否可以在插件(或主题)中使用WP-CLI?

例如

  $ret = \\WP_CLI::execute(\'plugin list\');
我想使用其他插件中的一些子命令。

1 个回复
SO网友:cjbj

WP-CLI 是WP的命令行界面。因此,它在Unix shell环境中使用。插件和主题是用PHP编写的(PHP本身也在shell中运行,通常是Unix)。因此,要在插件中执行WP-CLI命令,必须将其从PHP传递到Unix shell。这可以使用PHP函数完成shell_exec.

那么,这个问题的答案是‘有可能吗?’,是的,是的。然而,问题的答案是“我应该这样做吗?”不可能。以下是一些注意事项:

WP-CLI甚至可能不会安装在使用插件/主题的服务器上,例如,因为它是基于Windows的服务器。

使用shell_exec 由于命令行中可能有强大的命令,因此从主题/插件中删除是一种安全风险。许多提供程序阻止PHP使用shell_exec 和其他执行命令。

通过WP-CLI可以执行的所有操作也可以在WP中完成。毕竟,它是WP的网关,不提供任何附加功能。

结束