WPML
Статус
Решено
Связанный плагин/тема
W3 Total Cache

Обзор проблемы

W3-Total-Cache некорректно минифицирует файлы для дополнительных языков, когда активна настройка WPML язык по умолчанию в каталоге.

Обратите внимание: только версия Pro совместима с WPML.

Обходное решение

Чтобы включить минификацию файлов, добавьте следующий код в functions.php

function wpml_comp_2347( $data ){
	if ( did_action( 'wpml_loaded' ) ) {
		$home_url = $data['home_url'];
		if ( substr( $data['url'], 0, strlen( $home_url ) ) != $home_url ) {
			$data['home_url'] = get_option( 'home' );
		}
	}

	return $data;
}
add_filter( 'w3tc_url_to_docroot_filename', 'wpml_comp_2347', 20 );

Чтобы исправить удаление минифицированных файлов из очереди, измените следующую функцию в коде W3TC:
wp-content/plugins/w3-total-cache/Util_Environment.php
        /**
         * Returns home url regexp
         *
         * @return string
         */
        static public function home_url_regexp() {
                $home_url = get_option('home');
                $regexp = Util_Environment::get_url_regexp( $home_url );

                return $regexp;
        }

Дальнейшие действия

Мы понимаем, что необходимость вносить изменения в Ваш файл functions.php — не идеальное решение, и поэтому мы неоднократно пытались связаться с командой W3 Total Cache для устранения этой проблемы. Насколько нам известно на данный момент, версия Pro совместима с WPML, а бесплатная версия — нет. Если Вы хотите обсудить решение этой проблемы с командой W3 Total Cache, пожалуйста, свяжитесь с ними через их бесплатный канал поддержки.

Все известные проблемы →