typisttech / cloudflare-wp-api
Requires
- php: ^7.0
- jamesryanbell/cloudflare: ^1.10
Requires (Dev)
- lucatume/wp-browser: ^1.19
- php-mock/php-mock-phpunit: ^1.1
- squizlabs/php_codesniffer: ^2.8
README
WordPress HTTP API 替代了 jamesryanbell/cloudflare 包。
为什么使用 WP HTTP API 而不是 curl?
curl 很强大。然而,它并不总是存在于每个主机上,尤其是在共享主机上。使用 WordPress HTTP API 让 WordPress 找到最佳方式进行 HTTP 请求。这可能包括 curl 或其他方法。您无需关心这一点。请参阅 WordPress codex。
安装
应通过 composer 进行安装,有关如何安装 composer 的详细信息,请参阅 https://composer.php.ac.cn/。
$ composer require typisttech/cloudflare-wp-api
由于 jamesryanbell/cloudflare 包没有提供注入客户端对象的方式,我们必须将 Cloudflare\Api 重命名为 Cloudflare\BaseApi。然后,使用我们的 Api 类
$ vendor/bin/cfwp build
您必须在每次 composer install 和 composer update 时运行此命令。更好的方法是将其添加到 composer.json,如下所示
"scripts": { "post-install-cmd": "cfwp build", "post-update-cmd": "cfwp build" }
使用方法
一旦完成 $ cfwp build,您就可以像原始包一样使用它。
有关原始包的更多详细信息,请参阅 jamesryanbell/cloudflare。
成功的响应
从 wp_remote_request 解码 body 数组。
错误响应
WP_Error 对象。可能是从 wp_remote_request 返回的,或者是以下之一
| 代码 | 消息 | 数据 |
|---|---|---|
| authentication-error | 必须提供认证信息 | |
| authentication-error | Email 无效 | |
| decode-error | 响应错误不是数组 | response |
或者,是 Coudlfare 定义的错误代码之一,以下是一些示例
| 代码 | 消息 | 数据 |
|---|---|---|
| 1012 | 请求必须包含 'purge_everything' 或 'files' 之一 | response |
| 1210 | 该域名不再允许执行该操作 | response |
开始开发
此命令将从GitHub克隆项目源代码并安装其依赖项。
$ composer create-project --no-install --prefer-source --keep-vcs typisttech/cloudflare-wp-api:dev-master
$ cd cloudflare-wp-api
$ composer install
运行测试
Cloudflare WP API 在 Codeception 上运行测试,并依赖于 wp-browser 来提供WordPress集成。在测试之前,您必须在本地上安装WordPress并添加一个 codeception.yml 文件。有关 Varying Vagrant Vagrants 配置示例,请参阅 codeception.example.yml。
实际运行测试
$ composer test
我们还测试了所有PHP文件是否符合 PSR-2: 编码风格指南 以及部分 WordPress编码标准。
使用 $ composer check-style 检查代码风格,并使用 $ composer fix-style 修复。
反馈
请提供反馈! 我们希望尽可能多地将此库用于各种项目。请提交一个 问题,指出您喜欢和不喜欢的内容,或者叉取项目并提出建议。 任何问题都不小。
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 cloudflare-wp-api@typist.tech 而不是使用问题跟踪器来报告。
贡献
请参阅 CONTRIBUTING 和 CONDUCT 了解详细信息。
鸣谢
Cloudflare WP API 是一个 Typist Tech 项目,由自由开发者 Tang Rufus 维护,可 雇佣。
贡献者完整列表可在此处找到 这里。
特别感谢 James Bell,他的 Cloudflare包 使得此项目成为可能。
许可
Cloudflare WP API 在 Free Software Foundation 的GPLv2(或更高版本)下许可。有关更多信息,请参阅 许可文件。