问题标签 [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.
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
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。
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?
cron - Wordpress cron 未根据时间范围触发
我正在尝试运行基于时间范围触发的 wp_cron 事件。但是我可以设置一个小于某个时间段但不在一个范围内的间隔。场景是,如果$wp_cron_start
设置为中午之前的时间,并且如果$wp_cron_start
大于当前时间,则可以在当天触发,如果不满足这些条件,则将 wp_cron 设置为第二天运行。问题的第一个条件不起作用。说为情景$wp_cron_start = "08:00"
。
这只会设置第二天的 wp_cron。而且它仍然没有开火。
wordpress - (WP-CLI) 未创建 Wordpress-Tests_Lib 文件
我正在尝试在 Ubuntu 14.04 上进行 WordPress 插件测试,并且正在完成 WP-CLI 的设置,但我无法下载必要的文件(includes/functions.php)。
这是我正在使用的命令:
这是输出:
在使用 phpunit 命令时,它会引发错误:
我在办公室,所以我认为防火墙可能会阻止此命令,尽管我在 /etc/environment 中设置了代理。
帮助表示赞赏。
wordpress - 带有依赖项的 WordPress 插件 phpunit 测试
我怀疑这将是一个重复的问题或一个非常简单的答案,但我已经搜索了我能想出的每个术语,但没有任何结果。
这真的很简单;如何对依赖于其他插件的 WordPress 插件进行单元测试?
我目前正在开发一个包含支付网关的 WooCommerce 插件,该插件必须扩展WC_Payment_Gateway
WooCommerce 插件中包含的内容。所以我需要 WordPress 来加载和激活WooCommerce。我试过了;
- 手动只包括
/plugins/woocommerce/woocommerce.php
. 由于尚未创建 WooCommerce 表,因此给我 db 错误。 - 运行
activate_plugin( '<woocommerce plugin path>' );
在"muplugins_loaded"
动作上。给出与上述相同的错误。 - 克隆 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/...
- 运行
/plugins/woocommerce/tests/bin/install.sh
。给我PHP Fatal error: Cannot redeclare tests_add_filter() (previously declared in ...
- 以上的组合
有人知道我在做什么错吗?我真的不想放弃单元测试,但目前似乎是唯一的选择,因为我在插件中遇到了致命的 b/c 某些类,即类型提示支付网关,这显然会强制自动加载器获取它。
提前致谢 :)
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 进程组件:
仍然得到我的两个报价。所以那里什么也没做。
wordpress - WP-Cli 多站点报告
我有一个多站点安装和 wp-cli 设置和工作。理想情况下,我需要的是一个运行脚本,它将生成多站点安装中所有站点的列表以及活动主题的名称。
我可以弄清楚如何在单个站点上运行它,但我真正需要的是生成列表的能力。
我们的网络中有大约 400 多个站点,并且每周都在增长。有没有人解决过这个问题?
更新:我现在大部分时间都在工作,尽管我觉得这可以更好地优化。
我将其保存为list_active_themes.sh并通过运行将其输出为 JSON 文件sh list_active_themes.sh > active_themes.json
。
最后一部分是删除作为下面第 9 行结果的尾随逗号——我不知道如何计算返回的site
结果以便执行 if 语句以不输出逗号(如果它是最后一个逗号) for 循环。
这是我的代码:
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 命令?喜欢: