Open xAndrewCx opened 1 year ago
Salut @xAndrewCx, poti incerca cu un hook care permite interceptarea valorii "method_title" (woocommerce_order_item_get_method_title
) atunci cand e citita din order item-ul care reprezinta metoda respectiva de transport:
add_filter('woocommerce_order_item_get_method_title', function($previousValue, $item) {
$value = $previousValue;
if ($item instanceof WC_Order_Item_Shipping) {
$order = $item->get_order();
$lockerDataJson = $order->get_meta('_sameday_shipping_locker_id', true);
if (!empty($lockerDataJson)) {
$lockerData = @json_decode($lockerDataJson, false);
if (!empty($lockerData) && !empty($lockerData->name)) {
$addName = ucfirst($lockerData->name);
if (!empty($lockerData->address)) {
$addName .= ', ' . ucfirst($lockerData->address);
}
$value = $value . ' (' . $addName . ')';
}
}
}
return $value;
}, 99999, 2);
Hook-ul e apelat fie cand se apeleaza WC_Order_Item_Shipping::get_method_title()
, fie cand se apeleaza direct ::get_prop('method_title')
.
Partea buna e ca peste tot unde se cere acest "method title" o sa ai valoarea dorita, cu locker-ul si tot ce trebuie.
Partea proasta e ca peste tot unde se cere acest "method title" o sa ai valoarea dorita, cu locker-ul si tot ce trebuie, deci trebuie sa gasesti o modalitate de a discrimina intre diversele situatii. In cazul meu n-a fost nevoie, asa ca nu mi-am batut capul.
Salut, exista o posibilitate de a afișa în care locker se livrează comanda in email-urile trimise automat clienților în momentul în care acesta plasează comanda?