PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / trunk
WPML Multilingual & Multicurrency for WooCommerce vtrunk
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 1 month ago MulticurrencyHooks.php 1 month ago class-wcml-mix-and-match-products.php 1 month 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