首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PHP运行WP-CLI

使用PHP运行WP-CLI
EN

Stack Overflow用户
提问于 2017-08-18 14:31:09
回答 2查看 2.6K关注 0票数 3

我已经在Mac上安装了WP-CLI,下一步是使用PHP脚本执行WP-CLI命令。

我试图以以下方式实现它,但我没有看到任何事情发生。有人能看看我的代码并告诉我我做错了什么吗?

代码语言:javascript
复制
define( 'WP_CLI_ROOT', '/usr/local/bin/wp' );
include WP_CLI_ROOT . '';
$output = shell_exec("wp --info");
echo "<pre>".$output."</pre>";

我需要用我的PHP文件配置和安装wp吗?

此外,当我在终端上输入wp -info时,会显示以下信息。除了包Dir &全局配置之外,什么也没有出现。我还需要调整wp-cli吗?

代码语言:javascript
复制
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

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

谢谢

EN

回答 2

Stack Overflow用户

发布于 2019-03-20 02:49:52

问题是wp不在路径环境变量中,您应该将您的wp根添加到path环境中,希望这会有所帮助。有关所有wp命令的引用,请访问url - https://wpcommands.com

代码语言:javascript
复制
<?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>";


?>
票数 1
EN

Stack Overflow用户

发布于 2017-08-18 14:51:24

这是wp --info在我的终端上返回的内容。

我看到的唯一主要区别是php.isi used:字段。

对不起,我无能为力,但我不知道DOCKER是什么,我用的是MAMP,而不是XAMP

phar path只是我正在工作的当前目录

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45759156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档