Snippet-uri de cod utile pentru personalizare aditionala a functionalitatilor DPD

1 min read

Pret diferentiat pentru DPD Box #

Daca doriti sa afisati preturi manuale diferentiate pentru DPD vs DPD Box  atunci inserati urmatorul snippet (costul pentru DPD Box se seteaza in locul cifrelor verzi.):

add_filter('curiero_overwrite_dpd_box_shipping', function (array $args): array {
  if ($args['cost'] != 0) {
    $args['cost'] = 12;
  }
  return $args;
}, 10, 1);

Afisare numar de comanda pe AWB #

Daca doriti sa afisati numarul de comanda pe AWB, atunci inserat urmatorul snippet de cod:

add_filter('curiero_awb_details', function ($awb, $courier, $order) {
    if (!in_array($courier, ['DPD'])) return $awb;
    if ($courier == 'DPD') {
        $awb['ref1'] = $order->get_order_number();
    }
    return $awb;
}, 10, 3);

Setare numar zile de preluare intarziata a comenzii #

DPD are o setare prin care puteti alege ca sa va fie preluate comenzile al caror AWB l-ati generat azi dupa un numar de zile (intre 0 si 2). Inserati urmatorul snippet si inlocuiti numarul de zile dorite in locul cifrelor verzi

add_filter('curiero_awb_details_overwrite', function (array $awb_info, string $courier, string $order_id): array {
	if (
		!class_exists(CurieRO_Printing_DPD::class)
		|| CurieRO_Printing_DPD::$public_name !== $courier
	) {
		return $awb_info;
	}

	return array_merge(
		$awb_info,
		['deferredDays' => 2]
	);
}, 10, 3);

Afisarea conținutului în nota de colet #

Aceast snippet de cod vă ajută să afișați informațiile din câmpul „continut” în nota de colet, fără să vă faceți griji că informațiile vor fi tăiate din cauza limitării numărului de caractere din câmpul „continut”

add_filter('curiero_awb_details', function (array $awb_details, string $courier): array {
    if (class_exists(CurieRO_Printing_DPD::class) && $courier === CurieRO_Printing_DPD::$public_name) {
        $awb_details['shipmentNote'] = $awb_details['contents'];
        $awb_details['contents'] = 'N/A';
    }
    return $awb_details;
}, 10, 2);