通过外部API在WooCommerce中发布和更新JSON数据

时间:2019-02-13 05:32:14

标签: php json wordpress api woocommerce

我想从外部API创建帖子(并更新它们),这为我提供了连接到JSON数据的终结点,但是我没有成功将这些API数据发布到我的WordPress / WooCommerce中。

我尝试使用一些插件发布JSON数据(可在WordPress中使用),但是它们对我不起作用。

在Postman中将此端点“ http://api.website.com/rest/catalog/product/1.json”与GET请求一起使用,它返回JSON数据,但是当我将PHP代码粘贴到我的帖子中时,它不返回任何数据。

如何在WooCommerce中发布通过邮递员获取的JSON数据(作为文本,图片/ URL和标签)?并且,如果API服务器中发生了任何更改(例如,库存或产品说明),那么如何在现有WP帖子(产品)中进行修改?

由于我是编程界的新手,所以任何帮助或信息都将不胜感激!在此先感谢:)

1 个答案:

答案 0 :(得分:3)

$api_response = wp_remote_post( 'https://your-website/wp-json/wc/v2/products/{PRODUCT ID}', array(
    //'method'    => 'PUT',
    'headers' => array(
        'Authorization' => 'Basic ' . base64_encode( 'KEY:SECRET' )
    ),
    'body' => array(
            'regular_price' => '100.30', // just update the product price
        // but we can update several parameters at the same time
        // more params http://woocommerce.github.io/woocommerce-rest-api-docs/?shell#product-properties
    )
) );

$body = json_decode( $api_response['body'] );
//print_r( $body );

if( wp_remote_retrieve_response_message( $api_response ) === 'OK' ) {
    echo 'The product ' . $body->name . ' has been updated';
}

请以这种方式检查