WP Rocket最小化时如何排除外部JS

2016/08/13

WP Rocket教程

有时对于一个外部 JavaScript文件和最小化存在问题。外部文件不可能最小化,但是它们被移到页面顶部。为了阻止发生,您可能需要借助MU插件或在主题functions.php文件中修改。按照下面的WP Rocket教程操作。

例如您注意到下面的js文件:

https://cdnjs.cloudflare.com/ajax/libs/Flowtype.js/1.1.0/flowtype.min.js

…这个 您必须从WP Rocket’s文件优化中排除的地址部分 类似这样:

cdnjs.cloudflare.com

同理,您可以处理其它的外部文件地址,仅域名或子域名。

通过自定义MU(必须使用)插件排除

1
创建 mu-plugins 文件夹,在你的网站 wp-content 文件夹下.
2
使用文本编辑器 创建新的文件 并放下面的代码进去。

<?php
defined( 'ABSPATH' ) or die( 'Cheatin&#8217; uh?' );
/**
 * Plugin Name: WP Rocket | External Script Handler
 * Description: Exclude external scripts from WP Rocket’s file optimization.
 * Author:      WP Rocket Support Team (Jonathan)
 * License:     GNU General Public License v3 or later
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 */

/**
 * Exclude external scripts from WP Rocket’s file optimization.
 * @param  array  $external_js Array of external domains
 * @return array               Extended array of external domains
 */
function __fix_wprocket_excluded_external_js( $external_js ) {

	/**
	 * Replace with your external script domain.
	 */
	$external_js[] = 'cdnjs.cloudflare.com';

	return $external_js;
}
add_filter( 'rocket_minify_excluded_external_js', '__fix_wprocket_excluded_external_js' );
3
保存为 wp-rocket-external-js.php
4
上传这个文件mu-plugins 文件夹中.
5
最后 停用并激活 WP Rocket.

通过您的主题排序

把下面的代码放入子主题或您的主题的 functions.php 文件中。

/**
 * Exclude external scripts from WP Rocket’s file optimization.
 * @param  array  $external_js Array of script URL fragments
 * @return array               Extended array of script URL fragments
 */
function __fix_wprocket_excluded_external_js( $external_js ) {

	/**
	 * Replace with your external script URL part.
	 */
	$external_js[] = 'cdnjs.cloudflare.com';

	return $external_js;
}
add_filter( 'rocket_minify_excluded_external_js', '__fix_wprocket_excluded_external_js' );

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注