У меня есть настраиваемая форма оформления заказа woocommerce, но я хочу получить данные геолокации для расчета стоимости доставки. Я не могу этого сделать.
Код:
add_action( 'woocommerce_cart_calculate_fees','woocommerce_custom_surcharge' );
function woocommerce_custom_surcharge($cart) {
global $woocommerce;
$url=$api_url."wp/orders/calculo/envio";
$data =[
"longitude_customer" => 0, // I HAVE THIS VALUE ON MY CHEKOUT FORM
"latitude_customer" => 0, // I HAVE THIS VALUE ON MY CHEKOUT FORM
"longitude_origin" => 0, // I HAVE THIS VALUE ON MY CHEKOUT FORM
"latitude_origin" =>0 // I HAVE THIS VALUE ON MY CHEKOUT FORM
];
$response = httpPost($url, $data);
$woocommerce->cart->add_fee( 'Delivery', $response['cost'], true, '' );
}
function httpPost($url, $data) {
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
curl_close($curl);
return $response;
}