woocommerce php,WooCommerce REST API PHP Library

WooCommerce API - PHP Client

A PHP wrapper for the WooCommerce REST API. Easily interact with the WooCommerce REST API securely using this library. If using a HTTPS connection this library uses BasicAuth, else it uses Oauth to provide a secure connection to WooCommerce.

68747470733a2f2f7365637572652e7472617669732d63692e6f72672f776f6f636f6d6d657263652f77632d6170692d7068702e737667

68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f776f6f636f6d6d657263652f77632d6170692d7068702f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572

68747470733a2f2f62616467652e667572792e696f2f70682f6175746f6d6174746963253246776f6f636f6d6d657263652e737667

Installation

composer require automattic/woocommerce

Getting started

Generate API credentials (Consumer Key & Consumer Secret) following this instructions http://docs.woocommerce.com/document/woocommerce-rest-api/

.

Check out the WooCommerce API endpoints and data that can be manipulated in https://woocommerce.github.io/woocommerce-rest-api-docs/.

Setup

Setup for the new WP REST API integration (WooCommerce 2.6 or later):

require __DIR__ . '/vendor/autoload.php';

use Automattic\WooCommerce\Client;

$woocommerce = new Client(

'http://example.com',

'ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',

'cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',

[

'version' => 'wc/v3',

]

);

Client class

$woocommerce = new Client($url, $consumer_key, $consumer_secret, $options)

Options

Option

Type

Required

Description

url

string

yes

Your Store URL, example: http://woo.dev/

consumer_key

string

yes

Your API consumer key

consumer_secret

string

yes

Your API consumer secret

options

array

no

Extra arguments (see client options table)

Client options

Option

Type

Required

Description

version

string

no

API version, default is wc/v3

timeout

int

no

Request timeout, default is 15

verify_ssl

bool

no

Verify SSL when connect, use this option as false when need to test with self-signed certificates, default is true

follow_redirects

bool

no

Allow the API call to follow redirects

query_string_auth

bool

no

Force Basic Authentication as query string when true and using under HTTPS, default is false

oauth_timestamp

string

no

Custom oAuth timestamp, default is time()

user_agent

string

no

Custom user-agent, default is WooCommerce API Client-PHP

wp_api_prefix

string

no

Custom WP REST API URL prefix, used to support custom prefixes created with the rest_url_prefix filter

wp_api

bool

no

Set to false in order to use the legacy WooCommerce REST API (deprecated and not recommended)

Client methods

GET

$woocommerce->get($endpoint, $parameters = [])

POST

$woocommerce->post($endpoint, $data)

PUT

$woocommerce->put($endpoint, $data)

DELETE

$woocommerce->delete($endpoint, $parameters = [])

OPTIONS

$woocommerce->options($endpoint)

Arguments

Params

Type

Description

endpoint

string

WooCommerce API endpoint, example: customers or order/12

data

array

Only for POST and PUT, data that will be converted to JSON

parameters

array

Only for GET and DELETE, request query string

Response

All methods will return arrays on success or throwing HttpClientException errors on failure.

use Automattic\WooCommerce\HttpClient\HttpClientException;

try {

// Array of response results.

$results = $woocommerce->get('customers');

// Example: ['customers' => [[ 'id' => 8, 'created_at' => '2015-05-06T17:43:51Z', 'email' => ...

echo '' . print_r( $results, true ) . ''; // JSON output.

// Last request data.

$lastRequest = $woocommerce->http->getRequest();

echo '' . print_r( $lastRequest->getUrl(), true ) . ''; // Requested URL (string).

echo '' . print_r( $lastRequest->getMethod(), true ) . ''; // Request method (string).

echo '' . print_r( $lastRequest->getParameters(), true ) . ''; // Request parameters (array).

echo '' . print_r( $lastRequest->getHeaders(), true ) . ''; // Request headers (array).

echo '' . print_r( $lastRequest->getBody(), true ) . ''; // Request body (JSON).

// Last response data.

$lastResponse = $woocommerce->http->getResponse();

echo '' . print_r( $lastResponse->getCode(), true ) . ''; // Response code (int).

echo '' . print_r( $lastResponse->getHeaders(), true ) . ''; // Response headers (array).

echo '' . print_r( $lastResponse->getBody(), true ) . ''; // Response body (JSON).

} catch (HttpClientException $e) {

echo '' . print_r( $e->getMessage(), true ) . ''; // Error message.

echo '' . print_r( $e->getRequest(), true ) . ''; // Last request data.

echo '' . print_r( $e->getResponse(), true ) . ''; // Last response data.

}

Release History

2019-01-16 - 3.0.0 - Legacy API turned off by default, and improved JSON error handler.

2018-03-29 - 2.0.1 - Fixed fatal errors on lookForErrors.

2018-01-12 - 2.0.0 - Responses changes from arrays to stdClass objects. Added follow_redirects option.

2017-06-06 - 1.3.0 - Remove BOM before decoding and added support for multi-dimensional arrays for oAuth1.0a.

2017-03-15 - 1.2.0 - Added user_agent option.

2016-12-14 - 1.1.4 - Fixed WordPress 4.7 compatibility.

2016-10-26 - 1.1.3 - Allow set oauth_timestamp and improved how is handled the response headers.

2016-09-30 - 1.1.2 - Added wp_api_prefix option to allow custom WP REST API URL prefix.

2016-05-10 - 1.1.1 - Fixed oAuth and error handler for WP REST API.

2016-05-09 - 1.1.0 - Added support for WP REST API, added method Automattic\WooCommerce\Client::options and fixed multiple headers responses.

2016-01-25 - 1.0.2 - Fixed an error when getting data containing non-latin characters.

2016-01-21 - 1.0.1 - Sort all oAuth parameters before build request URLs.

2016-01-11 - 1.0.0 - Stable release.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值