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 / WcProductBundles / MulticurrencyHooks.php
woocommerce-multilingual / compatibility / WcProductBundles Last commit date
TranslationEditor 1 month ago BundledItemHooks.php 1 month ago Factory.php 1 month ago MulticurrencyHooks.php 1 month ago class-wcml-product-bundles.php 1 month ago class-wcml-wc-product-bundles-items.php 1 month ago
MulticurrencyHooks.php
44 lines
1 <?php
2
3 namespace WCML\Compatibility\WcProductBundles;
4
5 class MulticurrencyHooks implements \IWPML_Action {
6
7 public function add_hooks() {
8 add_filter( 'wcml_price_custom_fields_filtered', [ $this, 'getPriceCustomFields' ], 10 );
9 add_filter( 'wcml_update_custom_prices_values', [ $this, 'updateBundlesCustomPricesValues' ], 10, 2 );
10 add_action( 'wcml_after_save_custom_prices', [ $this, 'updateBundlesBasePrice' ], 10, 4 );
11 }
12
13 public function getPriceCustomFields( $customFields ) {
14 return array_merge(
15 $customFields,
16 [
17 '_wc_pb_base_regular_price',
18 '_wc_pb_base_sale_price',
19 '_wc_pb_base_price',
20 '_wc_sw_max_price',
21 '_wc_sw_max_regular_price',
22 ]
23 );
24 }
25
26 public function updateBundlesCustomPricesValues( $prices, $code ) {
27 if ( isset( $_POST['_custom_regular_price'][ $code ] ) ) {
28 $prices['_wc_pb_base_regular_price'] = wc_format_decimal( $_POST['_custom_regular_price'][ $code ] );
29 }
30
31 if ( isset( $_POST['_custom_sale_price'][ $code ] ) ) {
32 $prices['_wc_pb_base_sale_price'] = wc_format_decimal( $_POST['_custom_sale_price'][ $code ] );
33 }
34
35 return $prices;
36 }
37
38 public function updateBundlesBasePrice( $postId, $productPrice, $customPrices, $code ) {
39 if ( isset( $customPrices['_wc_pb_base_regular_price'] ) ) {
40 update_post_meta( $postId, '_wc_pb_base_price_' . $code, $productPrice );
41 }
42 }
43 }
44