PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / 5.5.7
WPML Multilingual & Multicurrency for WooCommerce v5.5.7
5.5.7 5.3.8 5.3.9 5.4.3 5.4.4 5.4.5 5.5.1 5.5.1.1 5.5.2.2 5.5.2.3 5.5.3 5.5.3.1 5.5.4 5.5.5 5.5.6 trunk 0.9 1.0 1.1 1.2 1.3 1.4 1.5 2.0 2.2 2.3 2.3.1 2.3.2 3.0 3.0.1 3.1 3.2 3.2.1 3.2.2 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.6 3.6.1 3.6.10 3.6.11 3.6.2 3.6.3 3.6.4 3.6.5 3.6.5.1 3.6.6 3.6.7 3.6.8 3.6.9 3.7 3.7.1 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.15 3.7.16 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9.0 3.9.1 3.9.1.1 3.9.2 3.9.3 3.9.4 3.9.5 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.10.4 4.11.2 4.11.3.2 4.11.5 4.11.6 4.12.1 4.12.4 4.12.5 4.12.6 4.2.0 4.2.0.1 4.2.1 4.2.1.1 4.2.10 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.8 4.2.8.1 4.2.9 4.3.0 4.3.1 4.3.2 4.3.2.1 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.4.0 4.4.1 4.4.2 4.4.2.1 4.5.0 4.6.0 4.6.1 4.6.2 4.6.2.1 4.6.3 4.6.5 4.6.6 4.6.7 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.9.0 4.9.1 5.0.1 5.0.2 5.1.1 5.1.2 5.1.3 5.2.0 5.2.1 5.3.2 5.3.3.1 5.3.4 5.3.5 5.3.6 5.3.7
woocommerce-multilingual / classes / PaymentGateways / BlockHooks.php
woocommerce-multilingual / classes / PaymentGateways Last commit date
Settings 1 week ago BlockHooks.php 1 week ago BlockHooksFactory.php 1 week ago Factory.php 1 year ago Hooks.php 1 week ago Strings.php 1 week ago
BlockHooks.php
41 lines
1 <?php
2
3 namespace WCML\PaymentGateways;
4
5 use Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry;
6 use WPML\LIB\WP\Hooks;
7
8 use function WPML\FP\spreadArgs;
9
10 class BlockHooks implements \IWPML_Action {
11
12 private $woocommerce_wpml;
13
14 public function __construct( \woocommerce_wpml $woocommerce_wpml ) {
15 $this->woocommerce_wpml = $woocommerce_wpml;
16 }
17
18 public function add_hooks() {
19 Hooks::onAction( 'woocommerce_blocks_payment_method_type_registration', PHP_INT_MAX )
20 ->then( spreadArgs( [ $this, 'translateSettings' ] ) );
21 }
22
23 public function translateSettings( $registry ) {
24 if ( $this->woocommerce_wpml->gateways instanceof \WCML_WC_Gateways ) {
25 foreach ( $registry->get_all_registered() as $gatewayId => $gateway ) {
26 Hooks::onFilter( 'option_woocommerce_' . $gatewayId . '_settings' )
27 ->then( spreadArgs( function( $settings ) use ( $gatewayId ) {
28 foreach ( [ 'title', 'description' ] as $name ) {
29 if ( isset( $settings[ $name ] ) ) {
30 $settings[ $name ] = $this->woocommerce_wpml->gateways->get_translated_gateway_string( $settings[ $name ], $gatewayId, $name );
31 }
32 }
33
34 return $settings;
35 } ) );
36 }
37 }
38 }
39
40 }
41