PluginProbe
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages / 2.5.0
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages v2.5.0
3.4.4 3.4.3 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 All 197 releases
← All changes | includes/class-convertkit-cache-plugins.php +4 -87 3.3.52.5.0 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,30 +57,19 @@
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' ) );
78 64
79 65 // Siteground Speed Optimizer: Exclude Forms from JS combine.
80 66 add_filter( 'convertkit_output_script_footer', array( $this, 'siteground_speed_optimizer_exclude_js_combine' ) );
81 67 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'siteground_speed_optimizer_exclude_js_combine' ) );
82 68
83 - // Rocket LazyLoad: Exclude images from lazy loading.
84 - add_filter( 'rocket_lazyload_excluded_src', array( $this, 'exclude_hosts' ) );
85 -
86 69 // WP Rocket: Disable Caching and Minification on Landing Pages.
87 70 add_action( 'convertkit_output_landing_page_before', array( $this, 'wp_rocket_disable_caching_and_minification_on_landing_pages' ) );
88 71
89 - // WP Rocket: Exclude Forms from JS minification and combine.
90 - add_filter( 'rocket_minify_excluded_external_js', array( $this, 'exclude_hosts' ) );
91 -
92 72 // WP Rocket: Exclude Forms from Delay JavaScript execution.
93 73 add_filter( 'convertkit_output_script_footer', array( $this, 'wp_rocket_exclude_delay_js_execution' ) );
94 74 add_filter( 'convertkit_resource_forms_output_script', array( $this, 'wp_rocket_exclude_delay_js_execution' ) );
95 75
@@ -160,28 +140,8 @@
160 140
161 141 }
162 142
163 143 /**
164 - * Disable JS Optimization on Kit scripts when the LiteSpeed Cache Plugin is installed, active
165 - * and its "JS Combine" setting is enabled.
166 - *
167 - * @since 3.3.1
168 - *
169 - * @param array $script Script key/value pairs to output as <script> tag.
170 - * @return array
171 - */
172 - public function litespeed_cache_exclude_js_optimize( $script ) {
173 -
174 - return array_merge(
175 - $script,
176 - array(
177 - 'data-no-optimize' => '1',
178 - )
179 - );
180 -
181 - }
182 -
183 - /**
184 144 * Exclude ConvertKit scripts from Perfmatters' "Delay JS" setting.
185 145 *
186 146 * @since 2.4.7
187 147 *
@@ -205,36 +165,8 @@
205 165
206 166 }
207 167
208 168 /**
209 - * Disable image lazy loading when a WordPress Page configured to display a
210 - * ConvertKit Landing Page is viewed.
211 - *
212 - * @since 2.5.1
213 - *
214 - * @param bool $enabled Lazy loading enabled.
215 - * @return bool
216 - */
217 - public function disable_image_lazy_loading_on_landing_pages( $enabled ) {
218 -
219 - // If the request isn't for a Page, don't change lazy loading settings.
220 - if ( ! is_page( get_the_ID() ) ) {
221 - return $enabled;
222 - }
223 -
224 - // If no landing page is specified for the Post, don't change lazy loading settings.
225 - $post_settings = new ConvertKit_Post( get_the_ID() );
226 - if ( ! $post_settings->has_landing_page() ) {
227 - return $enabled;
228 - }
229 -
230 - // ConvertKit Landing Page is going to be displayed.
231 - // Disable image lazy loading so that the Landing Page images display.
232 - return false;
233 -
234 - }
235 -
236 - /**
237 169 * Disable JS combining on ConvertKit scripts when the Siteground Speed Optimizer Plugin is installed, active
238 170 * and its "Combine JavaScript Files" setting is enabled.
239 171 *
240 172 * @since 2.4.6
@@ -266,11 +198,12 @@
266 198 * @since 2.4.6
267 199 */
268 200 public function wp_rocket_disable_caching_and_minification_on_landing_pages() {
269 201
270 - add_filter( 'rocket_minify_excluded_external_js', array( $this, 'exclude_hosts' ) );
271 - add_filter( 'rocket_exclude_css', array( $this, 'exclude_hosts' ) );
202 + add_filter( 'rocket_minify_excluded_external_js', array( $this, 'exclude_hosts_from_minification' ) );
203 + add_filter( 'rocket_exclude_css', array( $this, 'exclude_hosts_from_minification' ) );
272 204 add_filter( 'rocket_exclude_js', array( $this, 'exclude_local_js_from_minification' ) );
205 + add_filter( 'do_rocket_lazyload', '__return_false' );
273 206
274 207 }
275 208
276 209 /**
@@ -303,24 +236,8 @@
303 236 * @param array $hosts External hosts to ignore.
304 237 * @return array
305 238 */
306 239 public function exclude_hosts_from_minification( $hosts ) {
307 -
308 - _doing_it_wrong( __FUNCTION__, 'Use exclude_hosts() instead.', '3.1.0' );
309 -
310 - return $this->exclude_hosts( $hosts );
311 -
312 - }
313 -
314 - /**
315 - * Appends the $exclude_hosts property to an array of existing hosts.
316 - *
317 - * @since 3.1.0
318 - *
319 - * @param array $hosts External hosts to ignore.
320 - * @return array
321 - */
322 - public function exclude_hosts( $hosts ) {
323 240
324 241 return array_merge( $hosts, $this->exclude_hosts );
325 242
326 243 }