Akce před odesláním požadavku
Tento obsah zatím není dostupný ve vašem jazyce.
Plugin poskytuje několik akcí, které jsou spuštěny těsně před odesláním požadavku do Fakturoid API. Tyto akce umožňují provést dodatečné operace nebo logování.
Dostupné akce
Section titled “Dostupné akce”Před odesláním požadavku na objednávku
Section titled “Před odesláním požadavku na objednávku”do_action( 'wpify_woo_fakturoid_before_order_request', $order, $wc_order );| Parametr | Typ | Popis |
|---|---|---|
$order | OrderModel | Model objednávky s Fakturoid daty |
$wc_order | WC_Order | WooCommerce objednávka |
Před načtením kontaktu
Section titled “Před načtením kontaktu”Spouští se před načtením existujícího kontaktu z Fakturoidu.
do_action( 'wpify_woo_fakturoid_before_subject_request', $id );| Parametr | Typ | Popis |
|---|---|---|
$id | int | ID kontaktu ve Fakturoidu |
Před načtením dokumentu
Section titled “Před načtením dokumentu”Spouští se před načtením, zaplacením, stornováním nebo smazáním platby dokumentu.
do_action( 'wpify_woo_fakturoid_before_invoice_request', $id );| Parametr | Typ | Popis |
|---|---|---|
$id | int | ID dokumentu ve Fakturoidu |
Příklady použití
Section titled “Příklady použití”Logování všech požadavků
Section titled “Logování všech požadavků”Pro debugování komunikace s Fakturoid API.
/** * Log all Fakturoid API requests * * @param OrderModel $order Order model * @param WC_Order $wc_order WC order * * @return void */function log_fakturoid_order_request( $order, $wc_order ): void { error_log( sprintf( 'Fakturoid: Processing order #%s', $wc_order->get_order_number() ) );}add_action( 'wpify_woo_fakturoid_before_order_request', 'log_fakturoid_order_request', 10, 2 );Logování načtení kontaktu
Section titled “Logování načtení kontaktu”/** * Log subject request to Fakturoid * * @param int $id Subject ID * * @return void */function log_subject_request( $id ): void { error_log( sprintf( 'Fakturoid: Loading subject #%d', $id ) );}add_action( 'wpify_woo_fakturoid_before_subject_request', 'log_subject_request', 10, 1 );Logování operací s dokumentem
Section titled “Logování operací s dokumentem”/** * Log invoice request to Fakturoid * * @param int $id Invoice ID * * @return void */function log_invoice_request( $id ): void { error_log( sprintf( 'Fakturoid: Processing invoice #%d', $id ) );}add_action( 'wpify_woo_fakturoid_before_invoice_request', 'log_invoice_request', 10, 1 );Validace před odesláním
Section titled “Validace před odesláním”/** * Validate order before Fakturoid request * * @param OrderModel $order Order model * @param WC_Order $wc_order WC order * * @return void * @throws Exception When validation fails */function validate_before_fakturoid( $order, $wc_order ): void { // Zkontrolovat povinná pole if ( empty( $wc_order->get_billing_email() ) ) { throw new Exception( 'Order is missing billing email' ); }
if ( empty( $wc_order->get_billing_first_name() ) ) { throw new Exception( 'Order is missing billing name' ); }}add_action( 'wpify_woo_fakturoid_before_order_request', 'validate_before_fakturoid', 10, 2 );Kde umístit kód
Section titled “Kde umístit kód”Vlastní funkci můžete vložit buď do tzv. child šablony nebo pomocí pluginu Code Snippets.