Я пытаюсь передать заказы клиентов, если они относятся к определенной категории, использующей REST API, из одного магазина woocommerce в другой.
Я думаю, что есть проблема с моей аутентификацией.Я новичок в php, поэтому я не уверен, как пройти аутентификацию в другом магазине woocommerce с ключом и секретом потребителя, когда я пишу код в файле functions.php.
Какой правильный форматавторизоваться при написании кода в файле functions.php?И да, я посмотрел официальную документацию WOO REST API, но все еще не уверен.
add_action( 'woocommerce_payment_complete', 'my_api_call');
function my_api_call( $order_id ){
// Order Setup Via WooCommerce
$order = new WC_Order( $order_id );
// Iterate Through Items
$items = $order->get_items();
foreach ( $items as $item ) {
// Store Product ID
$product_id = $item['product_id'];
$product = new WC_Product($item['product_id']);
// Check for "categoryx" Category and Run
if ( has_term( 'categoryx', 'product_cat', $product_id ) ) {
$name = $order->billing_first_name;
$surname = $order->billing_last_name;
$email = $order->billing_email;
$projectsku = $product->get_sku();
$apikey ="astringoflettersandnumbers";
// API Callout to URL
$url = 'https://mystagingsite/wp-json/wc/v3/orders/';
$body = array(
"Project" => $projectsku,
"Name" => $name,
"Surname" => $surname,
"Email" => $email,
"KEY" => $apikey
);
$response = wp_remote_post( $url,
array(
'headers' => array('Content-Type' => 'application/json; charset=utf-8'),
'method' => 'POST',
'timeout' => 75,
'body' => json_encode($body),
)
);
$vars = json_decode($response['body'],true);
}
}
}
Ожидается: заказ клиента передается в магазин Результат: заказ клиента не передается в магазин