Hooky a filtry
Plugin WPify Woo GoPay poskytuje hooky a filtry, které umožňují vývojářům přizpůsobit jeho chování.
Filtry pro nastavení
Section titled “Filtry pro nastavení”wpify_woo_gopay_settings
Section titled “wpify_woo_gopay_settings”Filtruje pole nastavení platební brány.
apply_filters( 'wpify_woo_gopay_settings', array $settings );Parametry:
$settings(array) — Pole definic formulářových polí WooCommerce brány
Příklad — přidání vlastního pole do nastavení:
/** * Přidání vlastního pole do nastavení GoPay brány * * @param array $settings Nastavení brány * @return array */function my_gopay_custom_settings( $settings ) { $settings['my_custom_field'] = array( 'title' => 'Vlastní pole', 'type' => 'text', 'description' => 'Popis vlastního pole', 'default' => '', );
return $settings;}add_filter( 'wpify_woo_gopay_settings', 'my_gopay_custom_settings' );Příklad — změna výchozího názvu brány:
/** * Změna výchozího názvu platební brány * * @param array $settings Nastavení brány * @return array */function my_gopay_default_title( $settings ) { $settings['title']['default'] = 'Zaplatit přes GoPay';
return $settings;}add_filter( 'wpify_woo_gopay_settings', 'my_gopay_default_title' );Filtry pro platební metody
Section titled “Filtry pro platební metody”wpify_woo_gopay_payment_method
Section titled “wpify_woo_gopay_payment_method”Filtruje identifikátor platební metody použité pro platbu.
apply_filters( 'wpify_woo_gopay_payment_method', string $method );Parametry:
$method(string) — Identifikátor platební metody
Příklad — přepsání platební metody:
/** * Vynucení konkrétní platební metody * * @param string $method Platební metoda * @return string */function my_gopay_force_method( $method ) { // Vynucení kartové platební metody return 'PAYMENT_CARD';}add_filter( 'wpify_woo_gopay_payment_method', 'my_gopay_force_method' );wpify_woo_gopay_payment_method_image
Section titled “wpify_woo_gopay_payment_method_image”Filtruje URL obrázku ikony platební metody zobrazené na pokladně.
apply_filters( 'wpify_woo_gopay_payment_method_image', string $image_url, string $method );Parametry:
$image_url(string) — URL obrázku platební metody$method(string) — Identifikátor platební metody
Příklad — použití vlastní ikony pro platební metodu:
/** * Nahrazení ikony kartové platební metody * * @param string $image_url URL obrázku * @param string $method Platební metoda * @return string */function my_gopay_custom_icon( $image_url, $method ) { if ( $method === 'PAYMENT_CARD' ) { return get_stylesheet_directory_uri() . '/images/custom-card-icon.png'; }
return $image_url;}add_filter( 'wpify_woo_gopay_payment_method_image', 'my_gopay_custom_icon', 10, 2 );wpify_woo_gopay_checkout_enabled_methods
Section titled “wpify_woo_gopay_checkout_enabled_methods”Filtruje platební metody zobrazené na platební stránce GoPay (pouze hlavní brána).
apply_filters( 'wpify_woo_gopay_checkout_enabled_methods', array $methods );Parametry:
$methods(array) — Pole identifikátorů povolených platebních metod
Příklad — povolení pouze vybraných metod:
/** * Povolení pouze karty a bankovních převodů * * @param array $methods Platební metody * @return array */function my_gopay_filter_methods( $methods ) { return array_filter( $methods, function ( $method ) { return in_array( $method, [ 'PAYMENT_CARD', 'BANK_ACCOUNT' ] ); } );}add_filter( 'wpify_woo_gopay_checkout_enabled_methods', 'my_gopay_filter_methods' );Příklad — odebrání konkrétní metody:
/** * Odebrání platební metody Bitcoin z pokladny * * @param array $methods Platební metody * @return array */function my_gopay_remove_bitcoin( $methods ) { return array_filter( $methods, function ( $method ) { return $method !== 'BITCOIN'; } );}add_filter( 'wpify_woo_gopay_checkout_enabled_methods', 'my_gopay_remove_bitcoin' );Filtry pro platební argumenty
Section titled “Filtry pro platební argumenty”wpify_woo_gopay_payment_args
Section titled “wpify_woo_gopay_payment_args”Filtruje argumenty předávané GoPay API při vytváření platby.
apply_filters( 'wpify_woo_gopay_payment_args', array $args );Parametry:
$args(array) — Pole platebních argumentů odesílaných do GoPay API
Příklad — přidání vlastních metadat k platbě:
/** * Přidání dalších dat do GoPay platby * * @param array $args Platební argumenty * @return array */function my_gopay_payment_args( $args ) { $args['additional_params'][] = array( 'name' => 'custom_param', 'value' => 'custom_value', );
return $args;}add_filter( 'wpify_woo_gopay_payment_args', 'my_gopay_payment_args' );wpify_woo_gopay_recurring_payment_args
Section titled “wpify_woo_gopay_recurring_payment_args”Filtruje argumenty předávané GoPay API při vytváření opakované platby.
apply_filters( 'wpify_woo_gopay_recurring_payment_args', array $args );Parametry:
$args(array) — Pole argumentů opakované platby odesílaných do GoPay API
Příklad — úprava argumentů opakované platby:
/** * Úprava argumentů opakované platby * * @param array $args Argumenty opakované platby * @return array */function my_gopay_recurring_args( $args ) { // Přidání vlastního parametru pro opakované platby $args['additional_params'][] = array( 'name' => 'recurring_source', 'value' => 'woocommerce', );
return $args;}add_filter( 'wpify_woo_gopay_recurring_payment_args', 'my_gopay_recurring_args' );Filtry pro platební brány
Section titled “Filtry pro platební brány”wpify_woo_gopay_gateways
Section titled “wpify_woo_gopay_gateways”Filtruje seznam registrovaných platebních bran GoPay. Pole je numericky indexovaný seznam názvů tříd bran.
apply_filters( 'wpify_woo_gopay_gateways', array $gateways );Parametry:
$gateways(array) — Numericky indexované pole názvů tříd bran
Příklad — odebrání brány:
use WpifyWooGopay\Modules\WpifyWooGopay\Channels\BitcoinChannel;
/** * Odebrání Bitcoin brány * * @param array $gateways Platební brány * @return array */function my_gopay_remove_gateway( $gateways ) { return array_filter( $gateways, function ( $class ) { return $class !== BitcoinChannel::class; } );}add_filter( 'wpify_woo_gopay_gateways', 'my_gopay_remove_gateway' );Filtry pro logo
Section titled “Filtry pro logo”wpify_woo_{id}_logo
Section titled “wpify_woo_{id}_logo”Filtruje URL loga pro konkrétní bránu. Nahraďte {id} identifikátorem brány (např. gopay, gopay-credit-card, gopay-apple-pay).
apply_filters( 'wpify_woo_{id}_logo', string $logo_url );Parametry:
$logo_url(string) — URL loga brány
Příklad — nahrazení loga hlavní GoPay brány:
/** * Použití vlastního loga pro GoPay bránu * * @param string $logo_url URL loga * @return string */function my_gopay_custom_logo( $logo_url ) { return get_stylesheet_directory_uri() . '/images/custom-gopay-logo.svg';}add_filter( 'wpify_woo_gopay_logo', 'my_gopay_custom_logo' );Příklad — nahrazení loga Apple Pay brány:
/** * Použití vlastního loga pro Apple Pay bránu * * @param string $logo_url URL loga * @return string */function my_gopay_applepay_logo( $logo_url ) { return get_stylesheet_directory_uri() . '/images/custom-applepay-logo.svg';}add_filter( 'wpify_woo_gopay-apple-pay_logo', 'my_gopay_applepay_logo' );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.