HEX
Server: Apache
System: Linux beta.alfanet.ee 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: busines1 (1252)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: /home-ssd1/busines1/www/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
			);
		};
	}
}