Metadata objednávky
Tento obsah zatím není dostupný ve vašem jazyce.
Plugin ukládá informace o platbě do metadat objednávky WooCommerce.
Dostupná metadata
Section titled “Dostupná metadata”| Meta klíč | Typ | Popis |
|---|---|---|
_comgate_trans_id | string | ID transakce v Comgate |
_comgate_payment_url | string | URL platební stránky (iframe) |
_comgate_status | string | Stav platby |
_comgate_method | string | Použitá platební metoda |
Stavy platby
Section titled “Stavy platby”| Stav | Popis |
|---|---|
created | Platba vytvořena |
pending | Čeká na dokončení |
paid | Úspěšně zaplaceno |
authorized | Autorizováno (preautorizace) |
cancelled | Zrušeno zákazníkem |
Práce s metadaty
Section titled “Práce s metadaty”Získání stavu platby
Section titled “Získání stavu platby”$order = wc_get_order( $order_id );
// Stav platby$status = $order->get_meta( '_comgate_status' );
// ID transakce$trans_id = $order->get_meta( '_comgate_trans_id' );
// Použitá metoda$method = $order->get_meta( '_comgate_method' );Použití OrderModel
Section titled “Použití OrderModel”Plugin poskytuje rozšířený model objednávky s pomocnými metodami:
// Získání kontejneru$container = \Starter\Container::getInstance();
// Získání repository$order_repo = $container->get( \WpifyWooComgate\Repositories\OrderRepository::class );
// Získání objednávky$order = $order_repo->get( $order_id );
// Použití metod$status = $order->get_comgate_status();$trans_id = $order->get_comgate_trans_id();$payment_url = $order->get_comgate_payment_url();$method = $order->get_comgate_method();Vyhledání objednávky podle transakce
Section titled “Vyhledání objednávky podle transakce”$container = \Starter\Container::getInstance();$order_repo = $container->get( \WpifyWooComgate\Repositories\OrderRepository::class );
// Najde objednávku podle Comgate trans_id$order = $order_repo->find_by_trans_id( 'ABC123XYZ' );
if ( $order ) { echo 'Objednávka #' . $order->get_id();}Zobrazení stavu v administraci
Section titled “Zobrazení stavu v administraci”Stav platby se automaticky zobrazuje:
- V seznamu objednávek - ve sloupci s platebními informacemi
- V detailu objednávky - v sekci platebních údajů
Pro vlastní zobrazení můžete použít:
/** * Zobrazení stavu platby * * @param int $order_id ID objednávky */function display_comgate_status( $order_id ) { $order = wc_get_order( $order_id ); $status = $order->get_meta( '_comgate_status' );
if ( $status ) { $labels = array( 'created' => 'Vytvořeno', 'pending' => 'Čeká', 'paid' => 'Zaplaceno', 'authorized' => 'Autorizováno', 'cancelled' => 'Zrušeno', );
echo isset( $labels[ $status ] ) ? $labels[ $status ] : $status; }}