webdevstudios/wds-wp-rest-api-connect

一个辅助类,用于通过WordPress REST API和OAuth从一个WordPress安装连接到另一个。

v0.2.6 2017-03-08 17:33 UTC

This package is auto-updated.

Last update: 2024-09-23 08:04:19 UTC


README

一个通过OAuth 1.0a连接到WordPress REST API的工具。

要开始,您需要安装WP REST API插件OAuth插件

要使用此库,您需要从库的根目录运行composer install,然后从您的插件/主题中包含主库文件wds-wp-rest-api-connect.php和composer自动加载器vendor/autoload.php

安装并激活后,您需要创建一个'客户端应用程序'。当您有了客户端密钥和密钥时,您将创建一个新的WDS_WP_REST_API\OAuth1\Connect对象,通过传递这些凭据以及REST API URL和已注册的回调URL

// Make sure you run `composer install`!
require_once 'vendor/autoload.php';

// include the library.
require_once( 'wds-wp-rest-api-connect.php' );

// Get the connect object
$api_connect = new WDS_WP_REST_API\OAuth1\Connect();

// Client credentials
$client = array(

	// Library will 'discover' the API url
	'api_url' => 'WP SITE URL TO CONNECT TO',

	// App credentials set up on the server
	'client_key' => 'YOUR CLIENT KEY',
	'client_secret' => 'YOUR CLIENT SECRET',

	// Must match stored callback URL setup on server.
	'callback_uri' => admin_url() . '?api-connect',
);

/*
 * Initate the API connection.
 *
 * if the oauth connection is not yet authorized, (and autoredirect_authoriziation
 * is not explicitly set to false) you will be auto-redirected to the other site to
 * receive authorization.
 */
$discovery = $api_connect->init( $client );

然后您可以使用此对象检索认证请求URL,如果您已经认证,则可以发起请求。要查看完整的示例,请查看包含的example.php文件

更新日志

0.2.6

  • 从composer中删除Ryan McCue的Requests库,因为它现在存在于WP核心中。

0.2.5

  • 修复一个变量中的拼写错误,该变量应该使用对象属性(对于旧模式)。

0.2.4

  • 修复Connect::auth_request()中的错误逻辑,其中$response变量可能无法正确设置。

0.2.3

  • 更新example.php
  • 使请求更一致,并通过适当的过滤器传递参数。
  • 修复了一些遗漏的异常处理器。

0.2.2

  • 添加set_headers方法,以便能够设置用于发现的头。
  • 使用我们自己的API Discovery库来使用WP http API,并且如果存在,正确传递任何头。

0.2.1

  • 错误修复:修复reset_connection方法中的检查顺序,以确保始终调用delete_stored_error方法。

0.2.0

0.1.5

  • 从composer.json中删除自动加载(目前)。

0.1.4

  • 添加处理错误的实用方法。
  • 在wp_remote_request之前将帖子主体转换为查询字符串,因为http_build_query会删除空值,而oauth签名最终无法匹配。

0.1.3

  • 修复一些文档,并“聪明”的代码,并修复一个错误的变量名。
  • 添加class_exists检查,以免破坏具有多个实例化的网站。
  • 将响应代码存储为对象属性。
  • 在创建响应代码之前考虑响应中的WP_Error
  • 接受头数组,并将这些头传递到所有请求中。
  • 选项/瞬态密钥应该是所有参数的哈希,而不仅仅是URL。
  • 如果请求失败(或被要求不缓存),则不要缓存API描述。
  • 将头和密钥/option_key作为只读属性公开。
  • 从JSON更改为REST以匹配WordPress核心插件。
  • 将错误选项移动到其自己的方法。

0.1.2

  • 更好地检查失败的请求。
  • 为每个调用设置HTTP方法,以便OAuth签名匹配。
  • 根据当前URL创建重定向URL,或允许传入一个URL。
  • 将响应保持为可访问的类属性,并添加获取/设置请求方法。同时正确处理GET请求的授权头。
  • 根据审查员的反馈进行一些清理。

0.1.1

  • 重命名文件

0.1.0

  • 发布