Fejlesztőknek

Számlakészítés előtt a WordPress rendszerből ismert filterekkel lehet módosítani a számla adatait, amit a Billingo rendszerébe küld a bővítmény. Ezek a filterek érhetők el:

  • wc_billingo_plus_invoice – Végszámla, díjbekérő számla adatainak módosítására
  • wc_billingo_plus_complete – Teljesítettnek jelölés adatai
  • wc_billingo_plus_client – ügyfél létrehozásának adatai

A fent említett filterek mindegyike két paraméterrel rendelkezik, $data és $order. Előbbi a Billingo felé küldendő objektum, utóbbi az éppen aktuális rendelés adatai. Egy példa a számlán megjelenő számlaszám módosítására:

add_filter('wc_billingo_plus_invoice','wc_billingo_plus_invoice_lang_change',10,2);
function wc_billingo_plus_invoice_lang_change($invoiceData,$order) {
	$invoiceData['template_lang_code'] = 'de';
	return $invoiceData;
}

A következő filterek elérhetők még, ami nem feltétlen a számlakészítéssel kapcsolatos:

  • wc_billingo_plus_download_link – a Billingo letöltési link, második paraméter a rendelés ID-je
  • wc_billingo_plus_tax_number_field – a pénztár oldalon megjelenő adószám mező
  • wc_billingo_plus_tax_validation_message – üzenet, ami a hibás adószám esetén megjelenik
  • wc_billingo_plus_get_option – a bővítmény beállításai módosítáhatók vele, második paraméter a beállítás id-je

A számlán megjelenő tételeket is lehet módosítani a wc_billingo_plus_invoice_line_item filterrel. Ennek négy paramétere van. Az első $product_item, ami a tételre vonatkozó tömb(ezt kell módosítva visszaadni). A második eg WC_Order_Item class, a harmadik a rendelés, a negyedik pedig a teljes számla. Egy példa a tétel nevének módosítására:

add_filter('wc_billingo_plus_invoice_line_item', 'wc_billingo_plus_invoice_line_item_name_change', 10, 4);
function wc_billingo_plus_invoice_line_item_name_change($product_item, $order_item, $order, $invoiceData) {
	$product_item['description'] = 'Új tétel név';
	return $product_item;
}

wc_billingo_plus_bulk_generate_defer_limit filterrel módosítható az az érték, hogy csoportos számlakészítésnél hány számlától kezdve generálja a számlákat a háttérben. Az alapértelmezett érték 2, tehát ha kettőnél több rendeléshez készítesz számlát a csoportos műveletek segítségével, akkor a háttérben indul el a folyamat. Így módosíthatod az értéket:

add_filter('wc_szamlazz_bulk_generate_defer_limit', function(){
    return 5;
});

wc_billingo_plus_should_generate_auto_invoice filterrel ellenőrizheted, hogy az adott rendeléshez kell e automatán számlát készíteni, vagy nem. Például:

add_filter('wc_billingo_plus_should_generate_auto_invoice', function($should_generate_auto_invoice, $order_id){
    $order = wc_get_order($order_id);
    if($order && $order->get_currency() == 'EUR') {
        $should_generate_auto_invoice = false;
    }
    return $should_generate_auto_invoice;
}, 10, 2);

wc_billingo_plus_download_link filterrel módosíthatod a számla letöltési linkjét(például ha CDN-t használsz hozzá, vagy valamilyen extra paramétert szeretnél hozzáadni naplózás miatt):

add_filter('wc_billingo_plus_download_link', function($file_url, $order){
    return $file_url.'?param=test';
}, 10, 2);

wc_billingo_plus_document_types filterrel tudod módosítani a dokumentumok nevét(például ha más nyelven kell):

add_filter('wc_billingo_plus_document_types', function($document_types){
	/*
	array(
			'proform' => esc_html__('Díjbekérő','wc-billingo-plus'),
			'invoice' => esc_html__('Számla','wc-billingo-plus'),
			'void' => esc_html__('Sztornó számla','wc-billingo-plus'),
			'draft' => esc_html__('Piszkozat','wc-billingo-plus'),
	)
	*/
	$document_types['invoice'] = 'Invoice';
	return $document_types;
});

A wc_billingo_plus_pdf_file_name filter segítségével tudod módosítani a generált PDF fájl nevét, amit a wp-content/uploads/wc-billingo-plus mappában tárol. Két paramétere van, a dokumentum típusa és a rendelés azonosító. Egy pdf fájlnevet kell visszaadnod, .pdf kiterjesztéssel. Például:

add_filter('wc_billingo_plus_pdf_file_name', function($pdf_file_name, $document_type, $order_id){
	$order = wc_get_order($order_id);
	if($order) {
		$pdf_file_name = sanitize_title(implode('-', array($document_type, $order->get_order_number(), $order->get_billing_last_name(), $order->get_billing_first_name()))).'.pdf';
	}
	return $pdf_file_name;
}, 10, 3);

Van néhány action is:

  • wc_billingo_plus_after_invoice_error – hibás számlakészítés esetén fut le, 2 paraméterrel: $order, $error_object
  • wc_billingo_plus_after_invoice_success – sikeres számlakészítés után, 2 paraméterrel: $order, $response

A bővítmény naplózza a számlakészítés során előforduló hibákat. Ha a fejlesztői mód be van kapcsolva, akkor Billingo felé küldött adatokat naplózni fogja. Mindkét napló elérhető a WooCommerce / Állapot / Naplók menüpontban(válaszd ki a ‘wc_billingo_plus’ kezdetű logfájlt).

E-mail testreszabása

A WooCommerce e-mailekbe be lehet ágyazni az elkészült számlák hivatkozását. Ha szeretnéd módosítani az e-mailben lévő szöveget, duplikáld az e-mail sablon fájlt(woo-billingo-plus/includes/emails/) a témád woocommerce/emails mappájába.

Ebben a cikkben

    Bővítmény információk

    Verziószám: 4.6.11
    Legutóbb frissítve: 2023. 11. 10.
    Változási napló: Megtekint

    Woo Billingo Plus