HEX
Server: Apache/2.4.65 (Unix) OpenSSL/1.1.1k
System: Linux server-manager.elshandawiily.com 4.18.0-553.87.1.el8_10.x86_64 #1 SMP Mon Dec 1 05:11:16 EST 2025 x86_64
User: elshanda (1002)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/elshanda/public_html/wp-content/plugins/woocommerce-multilingual/classes/product/Hooks.php
<?php

namespace WCML\Products;

use WPML\FP\Obj;
use WPML\LIB\WP\Hooks as WpHooks;
use function WPML\FP\spreadArgs;

class Hooks implements \IWPML_Frontend_Action, \IWPML_Backend_Action {

	public function add_hooks() {
		WpHooks::onFilter( 'woocommerce_variable_children_args' )
		       ->then( spreadArgs( self::forceProductLanguageInQuery() ) );
	}

	/**
	 * @return \Closure array -> array
	 */
	private static function forceProductLanguageInQuery() {
		return function( $args ) {
			return Obj::assoc(
				'wpml_lang',
				apply_filters( 'wpml_element_language_code', '', [ 'element_id' => Obj::prop( 'post_parent', $args ), 'element_type' => 'product_variation' ] ),
				$args
			);
		};
	}
}