WPML

问题概述

当启用 WPML 设置目录中的默认语言时,W3-Total-Cache 无法正确压缩次要语言的文件。

请注意:只有 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 团队讨论解决此问题,请通过其免费支持渠道与他们联系。

所有已知问题

需要有关此问题的帮助?

提出支持问题,我们将与您一起调查。