PluginProbe
Autoptimize / 3.1.4
Autoptimize v3.1.4
2.2.2 2.3.0 2.3.1 2.3.2 2.3.3 2.3.4 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 All 107 releases
← All changes | classes/autoptimizeHTML.php +21 -1 2.7.43.1.4 View file →
@@ -16,8 +16,15 @@
16 16 */
17 17 private $keepcomments = false;
18 18
19 19 /**
20 + * Whether inline CSS/ JS is minified.
21 + *
22 + * @var bool
23 + */
24 + private $minify_inline = false;
25 +
26 + /**
20 27 * Whether to force xhtml compatibility.
21 28 *
22 29 * @var bool
23 30 */
@@ -41,8 +48,11 @@
41 48
42 49 // Filter to force xhtml.
43 50 $this->forcexhtml = (bool) apply_filters( 'autoptimize_filter_html_forcexhtml', false );
44 51
52 + // minify inline JS/ CSS.
53 + $this->minify_inline = (bool) apply_filters( 'autoptimize_html_minify_inline_js_css', $options['minify_inline'] );
54 +
45 55 // Filterable strings to be excluded from HTML minification.
46 56 $exclude = apply_filters( 'autoptimize_filter_html_exclude', '' );
47 57 if ( '' !== $exclude ) {
48 58 $exclude_arr = array_filter( array_map( 'trim', explode( ',', $exclude ) ) );
@@ -81,9 +91,19 @@
81 91 if ( $this->forcexhtml ) {
82 92 $options['xhtml'] = true;
83 93 }
84 94
85 - $tmp_content = Minify_HTML::minify( $this->content, $options );
95 + // Optionally minify inline JS & CSS.
96 + if ( $this->minify_inline ) {
97 + if ( false != autoptimizeOptionWrapper::get_option( 'autoptimize_js' ) && false != autoptimizeConfig::get_post_meta_ao_settings( 'ao_post_js_optimize' ) && true !== apply_filters( 'autoptimize_filter_js_noptimize', false, $this->content ) && false === strpos( $this->content, 'text/template' ) ) {
98 + $options['jsMinifier'] = 'JSMin::minify';
99 + }
100 + if ( false != autoptimizeOptionWrapper::get_option( 'autoptimize_css' ) && false != autoptimizeConfig::get_post_meta_ao_settings( 'ao_post_css_optimize' ) && true !== apply_filters( 'autoptimize_filter_css_noptimize', false, $this->content ) ) {
101 + $options['cssMinifier'] = 'autoptimizeCSSmin::minify';
102 + }
103 + }
104 +
105 + $tmp_content = AO_Minify_HTML::minify( $this->content, $options );
86 106 if ( ! empty( $tmp_content ) ) {
87 107 $this->content = $tmp_content;
88 108 unset( $tmp_content );
89 109 }