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 / 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