php - 使用 PHP 运行 WP-CLI

标签 php wordpress docker wp-cli

我已经在 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 Dirglobal config 旁边没有任何内容。我还需要对 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

如有任何帮助或建议,我们将不胜感激。

谢谢

最佳答案

问题是你的 wp cli 不在 path 环境变量中,你应该将你的 wp cli root 添加到路径环境中,希望这对你有帮助.有关所有 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>";


?>

关于php - 使用 PHP 运行 WP-CLI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45759156/

相关文章:

php - 解析 JSON 数据时出错。 JSONException : End of input at character

PHP PDO 插入 MySQL 错误 SQL 语法

php - WordPress wp_list_categories,如何突出显示 “All categories”

php - yii2: Yii\db\Query 模型函数

php - Wordpress 长搜索字符串返回空查询变量并重定向到主页

php - 以编程方式在 WooCommerce 中创建多个优惠券

php - 根据产品总数对某些类别进行折扣

amazon-ec2 - 如何将我的自动缩放组连接到我的 ecs 集群?

java.awt.AWTError : Can't connect to X11 window server using ':0' as the value of the DISPLAY variable 错误

java - Docker容器HttpUrlConnection超时异常