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 / compatibility / WcMixAndMatch / MulticurrencyHooks.php
woocommerce-multilingual / compatibility / WcMixAndMatch Last commit date
Factory.php 2 weeks ago MulticurrencyHooks.php 2 weeks ago class-wcml-mix-and-match-products.php 2 weeks ago
MulticurrencyHooks.php
48 lines
1 <?php
2
3 namespace WCML\Compatibility\WcMixAndMatch;
4
5 class MulticurrencyHooks implements \IWPML_Action {
6
7 public function add_hooks() {
8 add_filter( 'wcml_price_custom_fields_filtered', [ $this, 'get_price_custom_fields' ], 10 );
9 add_filter( 'wcml_update_custom_prices_values', [ $this, 'update_container_custom_prices_values' ], 10, 2 );
10 add_filter( 'wcml_after_save_custom_prices', [ $this, 'update_container_base_price' ], 10, 4 );
11 }
12
13 public function get_price_custom_fields( $custom_fields ) {
14 return array_merge(
15 $custom_fields,
16 [
17 '_mnm_base_regular_price',
18 '_mnm_base_sale_price',
19 '_mnm_base_price',
20 '_mnm_max_price',
21 '_mnm_max_regular_price',
22 ]
23 );
24 }
25
26 public function update_container_custom_prices_values( $prices, $code ) {
27 foreach ( [
28 '_custom_regular_price' => '_mnm_base_regular_price',
29 '_custom_sale_price' => '_mnm_base_sale_price',
30 ] as $wc_price => $custom_price ) {
31 if ( isset( $_POST[ $wc_price ][ $code ] ) ) {
32 $prices[ $custom_price ] = wc_format_decimal( $_POST[ $wc_price ][ $code ] );
33 }
34 }
35
36 return $prices;
37 }
38
39 public function update_container_base_price( $post_id, $product_price, $custom_prices, $code ) {
40
41 if ( isset( $custom_prices['_mnm_base_regular_price'] ) ) {
42 update_post_meta( $post_id, '_mnm_base_price_' . $code, $product_price );
43 }
44
45 }
46
47 }
48