POST & UPDATE JSON-данные в WooCommerce из внешнего API - PullRequest
0 голосов
/ 13 февраля 2019

Я хочу создавать посты (и обновлять их) из внешнего API, который предлагает мне конечные точки для подключения к данным JSON, но мне не удается опубликовать какие-либо из этих данных API в моем WordPress / WooCommerce.

Я пытался использовать некоторые плагины для публикации данных JSON (доступно в WordPress), но у меня они не работали.

Использование этой конечной точки "http://api.website.com/rest/catalog/product/1.json" в Postman с GETзапрос, он возвращает данные JSON, но когда я вставляю код PHP в свое сообщение, он не возвращает никаких данных.

Как я могу опубликовать эти данные JSON, которые я получаю с помощью Postman, в моем WooCommerce (в виде текста, рисунков)/ url и теги)? И если какие-либо изменения произойдут на сервере API (например, описание запаса или продукта), как это можно изменить в существующем посте (продукте) WP?

Любая помощь или информация будутпризнателен, так как я очень новичок в мире программирования! Заранее спасибо :)

1 Ответ

0 голосов
/ 13 февраля 2019
$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';
}

Пожалуйста, проверьте этот способ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...