PluginProbe
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages / 2.5.2
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages v2.5.2
3.4.2 3.4.1 3.4.0 3.3.9 3.3.8 3.3.7 3.3.6 3.3.5 3.3.4 3.3.3 3.3.2 3.3.1 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 2.3.0 2.3.1 2.3.2 All 195 releases
← All changes | includes/class-convertkit-cache-plugins.php +8 -92 3.4.22.5.2 View file →
@@ -14,10 +14,9 @@
14 14 */
15 15 class ConvertKit_Cache_Plugins {
16 16
17 17 /**
18 - * Holds external hosts to exclude from CSS and JS minification
19 - * and lazy loading of images.
18 + * Holds external hosts to exclude from CSS and JS minification.
20 19 *
21 20 * @since 2.4.6
22 21 *
23 22 * @var array
@@ -23,13 +22,10 @@
23 22 * @var array
24 23 */
25 24 public $exclude_hosts = array(
26 25 'cdnjs.cloudflare.com',
27 - 'pages.kit.com',
28 - 'kit.com',
29 26 'pages.convertkit.com',
30 27 'convertkit.com',
31 - 'filekitcdn.com',
32 28 );
33 29
34 30 /**
35 31 * Holds internal JS paths to exclude from JS minification.
@@ -52,14 +48,9 @@
52 48
53 49 // Autoptimize: Exclude Forms from JS defer.
54 50 add_filter( 'convertkit_output_script_footer', array( $this, 'autoptimize_exclude_js_defer' ) );
55 51 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'autoptimize_exclude_js_defer' ) );
56 - add_filter( 'autoptimize_filter_imgopt_should_lazyload', array( $this, 'disable_image_lazy_loading_on_landing_pages' ) );
57 52
58 - // Debloat: Exclude Forms from Delay Load JS.
59 - add_filter( 'debloat/defer_js_excludes', array( $this, 'exclude_hosts' ) );
60 - add_filter( 'debloat/delay_js_excludes', array( $this, 'exclude_hosts' ) );
61 -
62 53 // Jetpack Boost: Exclude Forms from JS defer.
63 54 add_filter( 'convertkit_output_script_footer', array( $this, 'jetpack_boost_exclude_js_defer' ) );
64 55 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'jetpack_boost_exclude_js_defer' ) );
65 56
@@ -66,33 +57,20 @@
66 57 // LiteSpeed: Exclude Forms from JS defer.
67 58 add_filter( 'convertkit_output_script_footer', array( $this, 'litespeed_cache_exclude_js_defer' ) );
68 59 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'litespeed_cache_exclude_js_defer' ) );
69 60
70 - // LiteSpeed: Exclude Forms from JS optimization.
71 - add_filter( 'convertkit_output_script_footer', array( $this, 'litespeed_cache_exclude_js_optimize' ) );
72 - add_filter( 'convertkit_resource_forms_output_script', array( $this, 'litespeed_cache_exclude_js_optimize' ) );
73 -
74 61 // Perfmatters: Exclude Forms from Delay JavaScript.
75 62 add_filter( 'convertkit_output_script_footer', array( $this, 'perfmatters_exclude_delay_js' ) );
76 63 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'perfmatters_exclude_delay_js' ) );
77 - add_filter( 'perfmatters_lazyload', array( $this, 'disable_image_lazy_loading_on_landing_pages' ) );
64 + add_filter( 'perfmatters_lazyload', array( $this, 'perfmatters_disable_lazy_loading_on_landing_pages' ) );
78 65
79 66 // Siteground Speed Optimizer: Exclude Forms from JS combine.
80 67 add_filter( 'convertkit_output_script_footer', array( $this, 'siteground_speed_optimizer_exclude_js_combine' ) );
81 68 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'siteground_speed_optimizer_exclude_js_combine' ) );
82 69
83 - // Siteground Speed Optimizer: Set Member Content Pages in "Exclude URLs from Caching".
84 - add_filter( 'sgo_exclude_urls_from_cache', array( $this, 'exclude_restrict_content_pages_from_caching' ) );
85 -
86 - // Rocket LazyLoad: Exclude images from lazy loading.
87 - add_filter( 'rocket_lazyload_excluded_src', array( $this, 'exclude_hosts' ) );
88 -
89 70 // WP Rocket: Disable Caching and Minification on Landing Pages.
90 71 add_action( 'convertkit_output_landing_page_before', array( $this, 'wp_rocket_disable_caching_and_minification_on_landing_pages' ) );
91 72
92 - // WP Rocket: Exclude Forms from JS minification and combine.
93 - add_filter( 'rocket_minify_excluded_external_js', array( $this, 'exclude_hosts' ) );
94 -
95 73 // WP Rocket: Exclude Forms from Delay JavaScript execution.
96 74 add_filter( 'convertkit_output_script_footer', array( $this, 'wp_rocket_exclude_delay_js_execution' ) );
97 75 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'wp_rocket_exclude_delay_js_execution' ) );
98 76
@@ -163,28 +141,8 @@
163 141
164 142 }
165 143
166 144 /**
167 - * Disable JS Optimization on Kit scripts when the LiteSpeed Cache Plugin is installed, active
168 - * and its "JS Combine" setting is enabled.
169 - *
170 - * @since 3.3.1
171 - *
172 - * @param array $script Script key/value pairs to output as <script> tag.
173 - * @return array
174 - */
175 - public function litespeed_cache_exclude_js_optimize( $script ) {
176 -
177 - return array_merge(
178 - $script,
179 - array(
180 - 'data-no-optimize' => '1',
181 - )
182 - );
183 -
184 - }
185 -
186 - /**
187 145 * Exclude ConvertKit scripts from Perfmatters' "Delay JS" setting.
188 146 *
189 147 * @since 2.4.7
190 148 *
@@ -208,9 +166,9 @@
208 166
209 167 }
210 168
211 169 /**
212 - * Disable image lazy loading when a WordPress Page configured to display a
170 + * Disable lazy loading in Perfmatters when a WordPress Page configured to display a
213 171 * ConvertKit Landing Page is viewed.
214 172 *
215 173 * @since 2.5.1
216 174 *
@@ -216,9 +174,9 @@
216 174 *
217 175 * @param bool $enabled Lazy loading enabled.
218 176 * @return bool
219 177 */
220 - public function disable_image_lazy_loading_on_landing_pages( $enabled ) {
178 + public function perfmatters_disable_lazy_loading_on_landing_pages( $enabled ) {
221 179
222 180 // If the request isn't for a Page, don't change lazy loading settings.
223 181 if ( ! is_page( get_the_ID() ) ) {
224 182 return $enabled;
@@ -230,9 +188,9 @@
230 188 return $enabled;
231 189 }
232 190
233 191 // ConvertKit Landing Page is going to be displayed.
234 - // Disable image lazy loading so that the Landing Page images display.
192 + // Disable Perfmatters Lazy Loading so that the Landing Page images display.
235 193 return false;
236 194
237 195 }
238 196
@@ -269,11 +227,12 @@
269 227 * @since 2.4.6
270 228 */
271 229 public function wp_rocket_disable_caching_and_minification_on_landing_pages() {
272 230
273 - add_filter( 'rocket_minify_excluded_external_js', array( $this, 'exclude_hosts' ) );
274 - add_filter( 'rocket_exclude_css', array( $this, 'exclude_hosts' ) );
231 + add_filter( 'rocket_minify_excluded_external_js', array( $this, 'exclude_hosts_from_minification' ) );
232 + add_filter( 'rocket_exclude_css', array( $this, 'exclude_hosts_from_minification' ) );
275 233 add_filter( 'rocket_exclude_js', array( $this, 'exclude_local_js_from_minification' ) );
234 + add_filter( 'do_rocket_lazyload', '__return_false' );
276 235
277 236 }
278 237
279 238 /**
@@ -307,24 +266,8 @@
307 266 * @return array
308 267 */
309 268 public function exclude_hosts_from_minification( $hosts ) {
310 269
311 - _doing_it_wrong( __FUNCTION__, 'Use exclude_hosts() instead.', '3.1.0' );
312 -
313 - return $this->exclude_hosts( $hosts );
314 -
315 - }
316 -
317 - /**
318 - * Appends the $exclude_hosts property to an array of existing hosts.
319 - *
320 - * @since 3.1.0
321 - *
322 - * @param array $hosts External hosts to ignore.
323 - * @return array
324 - */
325 - public function exclude_hosts( $hosts ) {
326 -
327 270 return array_merge( $hosts, $this->exclude_hosts );
328 271
329 272 }
330 273
@@ -339,35 +282,8 @@
339 282 */
340 283 public function exclude_local_js_from_minification( $scripts ) {
341 284
342 285 return array_merge( $scripts, $this->exclude_plugin_js );
343 -
344 - }
345 -
346 - /**
347 - * Exclude Restrict Content Pages from caching when the Siteground Speed Optimizer Plugin is installed, active
348 - * and its "Exclude URLs from Caching" setting is enabled.
349 - *
350 - * @since 3.3.6
351 - *
352 - * @param array $excluded_urls URLs to exclude from caching.
353 - * @return array
354 - */
355 - public function exclude_restrict_content_pages_from_caching( $excluded_urls ) {
356 -
357 - // Get the list of relative URLs for posts with restrict_content enabled
358 - // from the Plugin's cache.
359 - $restrict_content_cache = WP_ConvertKit()->get_class( 'restrict_content_cache' );
360 - if ( ! $restrict_content_cache ) {
361 - return $excluded_urls;
362 - }
363 -
364 - // Cache stores Restrict Content pages as id => relative url pairs.
365 - // Siteground just needs to the relative URLs.
366 - $restrict_content_urls = array_values( $restrict_content_cache->get() );
367 -
368 - // Merge the list of relative URLs with the list of URLs already excluded from caching.
369 - return array_merge( $excluded_urls, $restrict_content_urls );
370 286
371 287 }
372 288
373 289 }