=============== cut ===============
var data={
"shipping_address": args.cart.shippingAddress,
"billing_address": args.cart.billingAddress,
// "customer_note": document.querySelector("DIV.wc-block-checkout__add-note TEXTAREA").value,
"payment_method": "myplugin",
"payment_data": [{"key":"wc-myplugin-new-payment-method","value":false}],
};
const result = await fetch(
"https://my_store.ru/wp-json/wc/store/v1/checkout?_locale=user&myparameters=123
,{ method:'POST', mode:'cors', credentials:'include', headers: [
["Content-Type", "application/json"],
["X-WP-Nonce", wp.apiFetch.nonceMiddleware.nonce ],
["Nonce", JSON.parse(window.localStorage.getItem('storeApiNonce')).nonce ],
],
body: JSON.stringify(data)
}
);
if(result.ok) console.log('OK: '+result.text());
else console.log("Error: " + result.status);
?>
=============== /cut ===============
При этом, разумеется, мы понимаем, что в нагромождении граблей этого магазина (React над плагином WooCommerce над WordPress) может существовать и другой путь, каким фронтенд может обратиться к бэкенду дабы зарегистрировать заказ и узнать его уникальный номер. Возможно, есть специальная процедура wc.SpecialMagic[666].FuckingSecretApi(wp_Shit), но разбираться в этом не вижу смысла — все равно разработчики всё поменяют через полгода, чтобы ваши плагины отвалились и потребовали серьезной переделки. Сейчас, например, все написанные миром плагины и документации прежних лет уже не работают с новыми версиями типа WooCommerce 8.5.2 (WordPress 6.4.2) — изменилось всё, включая даже метод регистрации плагина. Так что, вполне возможно, именно прямой запрос с подстановкой Nonce продолжит работать, когда всё прочее изменится. По личным ощущениям: с благодарностью вспоминаю магазины OpenCart3, OpenCart4 и PrestaShop, написание плагинов для которых потребовало неделю-две напряженной работы на каждый. По сравнению с ними WooCommerce — невероятно запутанная йобань, с которой я провозился уже месяц, и без помощи Кирилла и ваших советов точно бы не осилил. Сложнее, вероятно, окажется лишь Magento — насколько я уже успел видеть, это закупленное пафосным Adobe удивительное поделие девяностых: в 2024 году его админят из терминала набором текстовых команд в консоли... [ ТЕКСТ ПОД КАТОМ: Доступен только в оригинальной заметке на сайте ]