问题标签 [wp-cli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1713 浏览

bash - wp-cli:无法在 MAMP 上运行 phpunit

我正在遵循插件测试设置/安装说明。我得wp scaffold plugin-tests my-plugin跑了。但是在下一步尝试运行时,bash bin/install-wp-tests.sh wordpress_test root '' localhost latest我收到以下错误:

我的本地 Wordpress 站点正在运行 MAMP(正在运行)。我不确定这是否与安装脚本相关,因为我认为它正在创建一个临时数据库来运行测试......它使用内置的 OSX mysql 还是 MAMP 的 MySQL 是否重要?

这是来自的输出wp --info

更新 2 我发现最初没有安装 MySQL ......这就是我无法连接的原因!但现在是。我运行了安装脚本,这有效......

但是当我跑步时,phpunit我得到了这个:

我的部分问题是我不清楚 wp-cli 是否应该完全在本机 (cli) PHP/Mysql 或 MAMP 的 PHP/Mysql 或两者的某种组合上运行。

更新 4 我很确定最后一个问题是 phpunit 需要安装在 MAMP 中,但我是从 OSX 运行它...

在这个要点中提到。

更新 6

事实证明,您不能再使用 pear 安装 phpunit。所以我将它添加为 require-dev 下的作曲家依赖项,但是当我运行该版本时,我得到了同样的错误!

我什至将它添加到我的路径中以确保...

更新 7

在阅读了这篇博文底部的评论后,我看到安装脚本引用了 OSX 版本的mysqladmin. 我不确定这是否重要,但我在路径中添加了 MAMP 版本,并重新运行了安装脚本。/tmp/无论如何,它似乎都安装了 Wordpress 文件。我运行时出现同样的错误phpunit

0 投票
1 回答
525 浏览

wordpress - 如何为 Wordpress 插件配置 circleci

我的项目是一个 Wordpress 插件。我正在使用circleci进行持续集成。

我正在尝试设置我的 circle.yml 文件,以便我可以运行我的 phpunit 测试。我正在按照这个示例在 CI 环境中安装 Wordpress 等。这对我不起作用:

这是上面评论中提到的错误:

0 投票
4 回答
2056 浏览

php - wp-cli search-replace 命令不搜索和替换

我正在使用 wp-cli 工具来搜索网站的 url 并将其替换为新的 url。我正在 wordpress 安装目录的命令行中执行此命令:

该命令不会发出任何错误,当我用这个 sql 检查数据库时:

我得到零结果。

我在 wp.config 文件中正确设置了用户名、密码、数据库名称、位置。

编辑

这是否与 sql 文件权限有关?

编辑 好的 wp-cli 对我不起作用,但https://interconnectit.com/products/search-and-replace-for-wordpress-databases/起作用了。确保在撰写本文时使用的是稳定版本,即:v2.1.0 STABLE。

0 投票
1 回答
285 浏览

php - WP-CLI error in connecting to the database

This is a very common wp-cli error while using MAMP. I installed wp-cli, exported the php version MAMP is using to the WP_CLI_PHP variable as recommended by the instructions. The output of $ wp --info is:

I've followed along with all the solutions for this, but I'm still getting a timeout and error in connecting to the database. I also have MAMP running while running wp-cli commands. Any ideas?

0 投票
0 回答
75 浏览

cron - Wordpress cron 未根据时间范围触发

我正在尝试运行基于时间范围触发的 wp_cron 事件。但是我可以设置一个小于某个时间段但不在一个范围内的间隔。场景是,如果$wp_cron_start设置为中午之前的时间,并且如果$wp_cron_start大于当前时间,则可以在当天触发,如果不满足这些条件,则将 wp_cron 设置为第二天运行。问题的第一个条件不起作用。说为情景$wp_cron_start = "08:00"

这只会设置第二天的 wp_cron。而且它仍然没有开火。

0 投票
2 回答
1618 浏览

wordpress - (WP-CLI) 未创建 Wordpress-Tests_Lib 文件

我正在尝试在 Ubuntu 14.04 上进行 WordPress 插件测试,并且正在完成 WP-CLI 的设置,但我无法下载必要的文件(includes/functions.php)。

这是我正在使用的命令:

这是输出:

在使用 phpunit 命令时,它会引发错误:

我在办公室,所以我认为防火墙可能会阻止此命令,尽管我在 /etc/environment 中设置了代理。

帮助表示赞赏。

0 投票
2 回答
1391 浏览

wordpress - 带有依赖项的 WordPress 插件 phpunit 测试

我怀疑这将是一个重复的问题或一个非常简单的答案,但我已经搜索了我能想出的每个术语,但没有任何结果。

这真的很简单;如何对依赖于其他插件的 WordPress 插件进行单元测试?

我目前正在开发一个包含支付网关的 WooCommerce 插件,该插件必须扩展WC_Payment_GatewayWooCommerce 插件中包含的内容。所以我需要 WordPress 来加载和激活WooCommerce。我试过了;

  1. 手动只包括/plugins/woocommerce/woocommerce.php. 由于尚未创建 WooCommerce 表,因此给我 db 错误。
  2. 运行activate_plugin( '<woocommerce plugin path>' );"muplugins_loaded"动作上。给出与上述相同的错误。
  3. 克隆 WooCommerce 开发者。回购并包括test/bootstrap.php在woocommerce中。给我一个 PHP 致命错误:wp-content/plugins/woocommerce/tmp/wordpress-tests-lib/includes/functions.php): failed to open stream: No such file or directory in /home/...
  4. 运行/plugins/woocommerce/tests/bin/install.sh。给我PHP Fatal error: Cannot redeclare tests_add_filter() (previously declared in ...
  5. 以上的组合

有人知道我在做什么错吗?我真的不想放弃单元测试,但目前似乎是唯一的选择,因为我在插件中遇到了致命的 b/c 某些类,即类型提示支付网关,这显然会强制自动加载器获取它。

提前致谢 :)

0 投票
1 回答
1702 浏览

json - 带有 json_encode 和 shell_exec 的 JSON 无效

我正在使用Symfony 的控制台组件编写一些命令行工具,其中一个使用 WP-CLI 来设置 WordPress 站点。特别是使用wp option update我遇到了 JSON 和引号的问题。

例如,运行类似:

结果在数据库中的文字''。事实上,每当我使用该命令时,如果它成功,我尝试在数据库中设置的任何内容都包含在单引号中。

然后是这样的:

转储结果:

这是有效的 JSON,但该wp命令导致以下结果:

您会注意到引号已被删除,我认为这就是它所抱怨的?或者这就是它转储错误的方式?

无论哪种方式,然后我决定对 JSON 进行硬编码,所以只需:

这给了我以下错误:

错误:位置参数太多:,bitbucket_username:用户名,bitbucket_password:密码}'

我打赌这两个问题是相关的。我想这可能是一个 WP-CLI 问题,所以我在那里打开了一个问题,但没有得到答案就关闭了。然而,我越是盯着它看,我就越觉得它可能是 Symfony 的东西。也许我肯定需要使用流程组件而不是shell_exec?这就是它的设计目的吗?

更新:尝试了 Symfony 进程组件:

仍然得到我的两个报价。所以那里什么也没做。

0 投票
1 回答
472 浏览

wordpress - WP-Cli 多站点报告

我有一个多站点安装和 wp-cli 设置和工作。理想情况下,我需要的是一个运行脚本,它将生成多站点安装中所有站点的列表以及活动主题的名称。

我可以弄清楚如何在单个站点上运行它,但我真正需要的是生成列表的能力。

我们的网络中有大约 400 多个站点,并且每周都在增长。有没有人解决过这个问题?


更新:我现在大部分时间都在工作,尽管我觉得这可以更好地优化。

我将其保存为list_active_themes.sh并通过运行将其输出为 JSON 文件sh list_active_themes.sh > active_themes.json

最后一部分是删除作为下面第 9 行结果的尾随逗号——我不知道如何计算返回的site结果以便执行 if 语句以不输出逗号(如果它是最后一个逗号) for 循环。

这是我的代码:

0 投票
1 回答
502 浏览

node.js - 如何使用 node-wp-cli 运行自定义 wp-cli 命令?

我正在使用node-wp-cli从 Node.js 运行 WP-cli 命令。所有内置的 WP-cli 命令都可以完美运行,但我在尝试运行自定义 WP-cli 命令时卡住了。

有没有办法wp MyRegisteredCommand SubCommand从 node-wp-cli 运行我的自定义 WP-Cli 命令?喜欢: