我在Mac上安装了WP-CLI,下一步是使用PHP脚本执行WP-CLI命令。
我试图通过以下方式实现它,但我没有看到任何事情发生。有人可以看看我的代码并告诉我,我做错了吗?
define( 'WP_CLI_ROOT', '/usr/local/bin/wp' );
include WP_CLI_ROOT . '';
$output = shell_exec("wp --info");
echo "<pre>".$output."</pre>";
我是否需要使用我的PHP文件配置和设置wp-cli?
此外,当我在终端上键入 wp --info 时,会显示以下信息。 Package Dir 旁边没有任何内容出现。 全局配置。我还需要调整wp-cli吗?
MAC-00343:htdocs mike$ wp --info
PHP binary: /usr/bin/php
PHP version: 5.6.30
php.ini used:
WP-CLI root dir: phar://wp-cli.phar
WP-CLI vendor dir: phar://wp-cli.phar/vendor
WP_CLI phar path: /Users/mike/Docker/xamp/www/wordpress_wwws/htdocs
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 1.3.0
非常感谢任何帮助或建议。
由于
答案 0 :(得分:0)
以下是我的终端上wp --info
返回的内容。
我看到的唯一主要区别是php.isi used:
字段。
抱歉,我无法提供更多帮助,但我不知道DOCKER是什么,我使用的是MAMP,而不是XAMP
phar path
只是我正在使用的当前目录
答案 1 :(得分:0)
问题是您的wp cli不在 path 环境变量中,您应按以下方式将 wp cli根目录添加到路径环境中,希望这会有所帮助。有关所有wp cli命令的参考,请访问URL-https://wpcommands.com
<?php
$saved = getenv("path"); // get the value of PATH environment variable and save current value
$newld = "/usr/local/bin"; // extra paths to add - in this case, it should be your wp cli root
if ($saved)
{
$newld .= ":$saved";
}
// append old paths if any
putenv("path=$newld"); // set new value
// exec wp cli command
$output = shell_exec("wp --info");
echo "<pre>".$output."</pre>";
?>