From 921c7d79e61f6134d870ba434cd19cb53aac8757 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Perona?= Date: Tue, 15 Oct 2024 14:52:46 -0400 Subject: [PATCH] use CommentTrait --- inc/Addon/WebP/Subscriber.php | 5 +++++ inc/Engine/CDN/CDN.php | 5 ++++- inc/Engine/CriticalPath/CriticalCSSSubscriber.php | 6 +++++- .../Media/AboveTheFold/Frontend/Controller.php | 6 +++++- inc/Engine/Media/ImageDimensions/ImageDimensions.php | 6 +++++- inc/Engine/Media/Lazyload/CSS/Subscriber.php | 6 +++++- inc/Engine/Media/Lazyload/Subscriber.php | 6 ++++++ inc/Engine/Optimization/DeferJS/DeferJS.php | 5 ++++- inc/Engine/Optimization/DelayJS/HTML.php | 6 +++++- .../LazyRenderContent/Frontend/Controller.php | 7 ++++++- inc/Engine/Optimization/Minify/CSS/Minify.php | 4 +++- inc/Engine/Optimization/Minify/JS/Combine.php | 5 ++++- inc/Engine/Optimization/Minify/JS/Minify.php | 5 ++++- inc/Engine/Optimization/RUCSS/Controller/UsedCSS.php | 4 +++- inc/Engine/Preload/Fonts.php | 12 +++++++++++- 15 files changed, 75 insertions(+), 13 deletions(-) diff --git a/inc/Addon/WebP/Subscriber.php b/inc/Addon/WebP/Subscriber.php index 8951d6fa7c..a245e6467e 100644 --- a/inc/Addon/WebP/Subscriber.php +++ b/inc/Addon/WebP/Subscriber.php @@ -7,6 +7,7 @@ use WP_Rocket\Admin\Options_Data; use WP_Rocket\Event_Management\Subscriber_Interface; use WP_Rocket\Engine\CDN\Subscriber as CDNSubscriber; +use WP_Rocket\Engine\Support\CommentTrait; /** * Subscriber for the WebP support. @@ -14,6 +15,8 @@ * @since 3.4 */ class Subscriber extends AbstractWebp implements Subscriber_Interface { + use CommentTrait; + /** * Options_Data instance. * @@ -158,6 +161,8 @@ public function convert_to_webp( $html ) { $has_webp = apply_filters( 'rocket_page_has_webp_files', $has_webp, $html ); if ( $has_webp ) { + $html = $this->add_meta_comment( 'cache_webp', $html ); + return $html . ''; } diff --git a/inc/Engine/CDN/CDN.php b/inc/Engine/CDN/CDN.php index 985e037328..ba864553d1 100644 --- a/inc/Engine/CDN/CDN.php +++ b/inc/Engine/CDN/CDN.php @@ -4,6 +4,7 @@ namespace WP_Rocket\Engine\CDN; use WP_Rocket\Admin\Options_Data; +use WP_Rocket\Engine\Support\CommentTrait; /** * CDN class @@ -11,6 +12,8 @@ * @since 3.4 */ class CDN { + use CommentTrait; + /** * WP Rocket Options instance * @@ -80,7 +83,7 @@ public function rewrite( $html ) { $html = str_replace( $match[0], $cdn_url, $html ); } - return $html; + return $this->add_meta_comment( 'cdn', $html ); } /** diff --git a/inc/Engine/CriticalPath/CriticalCSSSubscriber.php b/inc/Engine/CriticalPath/CriticalCSSSubscriber.php index ffba529501..4137c14485 100644 --- a/inc/Engine/CriticalPath/CriticalCSSSubscriber.php +++ b/inc/Engine/CriticalPath/CriticalCSSSubscriber.php @@ -8,6 +8,7 @@ use WP_Rocket\Engine\Optimization\RegexTrait; use WP_Rocket\Event_Management\Subscriber_Interface; use WP_Filesystem_Direct; +use WP_Rocket\Engine\Support\CommentTrait; /** * Critical CSS Subscriber. @@ -16,6 +17,7 @@ */ class CriticalCSSSubscriber implements Subscriber_Interface { use RegexTrait; + use CommentTrait; /** * Instance of Critical CSS. @@ -602,7 +604,9 @@ public function insert_critical_css_buffer( $buffer ) { 1 ); - return preg_replace( '##iU', $this->return_remove_cpcss_script() . '', $buffer, 1 ); + $buffer = preg_replace( '##iU', $this->return_remove_cpcss_script() . '', $buffer, 1 ); + + return $this->add_meta_comment( 'async_css', $buffer ); } /** diff --git a/inc/Engine/Media/AboveTheFold/Frontend/Controller.php b/inc/Engine/Media/AboveTheFold/Frontend/Controller.php index e34481d969..530a525e48 100644 --- a/inc/Engine/Media/AboveTheFold/Frontend/Controller.php +++ b/inc/Engine/Media/AboveTheFold/Frontend/Controller.php @@ -9,10 +9,12 @@ use WP_Rocket\Engine\Optimization\RegexTrait; use WP_Rocket\Engine\Optimization\UrlTrait; use WP_Rocket\Engine\Common\PerformanceHints\Frontend\ControllerInterface; +use WP_Rocket\Engine\Support\CommentTrait; class Controller implements ControllerInterface { use RegexTrait; use UrlTrait; + use CommentTrait; /** * Options instance @@ -61,7 +63,9 @@ public function optimize( string $html, $row ): string { return $html; } - return $this->preload_lcp( $html, $row ); + $html = $this->preload_lcp( $html, $row ); + + return $this->add_meta_comment( 'oci', $html ); } /** diff --git a/inc/Engine/Media/ImageDimensions/ImageDimensions.php b/inc/Engine/Media/ImageDimensions/ImageDimensions.php index ca2f8fc866..4f4934ad27 100644 --- a/inc/Engine/Media/ImageDimensions/ImageDimensions.php +++ b/inc/Engine/Media/ImageDimensions/ImageDimensions.php @@ -8,10 +8,12 @@ use WP_Rocket\Admin\Options_Data; use WP_Rocket\Engine\Admin\Settings\Settings; use WP_Rocket\Engine\Optimization\RegexTrait; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Logger\Logger; class ImageDimensions { use RegexTrait; + use CommentTrait; /** * Options_Data instance @@ -155,7 +157,9 @@ public function specify_image_dimensions( $html ) { return $html; } - return str_replace( array_keys( $replaces ), $replaces, $html ); + $html = str_replace( array_keys( $replaces ), $replaces, $html ); + + return $this->add_meta_comment( 'image_dimensions', $html ); } /** diff --git a/inc/Engine/Media/Lazyload/CSS/Subscriber.php b/inc/Engine/Media/Lazyload/CSS/Subscriber.php index 0a33ec5350..bd3051d6a7 100644 --- a/inc/Engine/Media/Lazyload/CSS/Subscriber.php +++ b/inc/Engine/Media/Lazyload/CSS/Subscriber.php @@ -16,6 +16,7 @@ TagGenerator}; use WP_Rocket\Engine\Common\Cache\CacheInterface; use WP_Rocket\Engine\Optimization\RegexTrait; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Event_Management\Subscriber_Interface; use WP_Rocket\Logger\LoggerAware; use WP_Rocket\Logger\LoggerAwareInterface; @@ -23,6 +24,7 @@ class Subscriber implements Subscriber_Interface, LoggerAwareInterface { use LoggerAware; use RegexTrait; + use CommentTrait; /** * Extract background images from CSS. @@ -205,7 +207,9 @@ public function maybe_replace_css_images( string $html ): string { ) ); - return $output['html']; + $html = $this->add_meta_comment( 'lazyload_css_bg_img', $output['html'] ); + + return $html; } /** diff --git a/inc/Engine/Media/Lazyload/Subscriber.php b/inc/Engine/Media/Lazyload/Subscriber.php index 2b35cfe5bc..23c0a5eff4 100644 --- a/inc/Engine/Media/Lazyload/Subscriber.php +++ b/inc/Engine/Media/Lazyload/Subscriber.php @@ -8,6 +8,7 @@ use WP_Rocket\Dependencies\RocketLazyload\Iframe; use WP_Rocket\Admin\Options_Data; use WP_Rocket\Engine\Optimization\RegexTrait; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Event_Management\Subscriber_Interface; /** @@ -18,6 +19,7 @@ class Subscriber implements Subscriber_Interface { use RegexTrait; use CanLazyloadTrait; + use CommentTrait; const SCRIPT_VERSION = '17.8.3'; @@ -330,6 +332,8 @@ public function lazyload( $html ) { ]; $html = $this->iframe->lazyloadIframes( $html, $buffer, $args ); + + $html = $this->add_meta_comment( 'lazyload_iframes', $html ); } if ( $this->can_lazyload_images() ) { @@ -352,6 +356,8 @@ public function lazyload( $html ) { if ( apply_filters( 'rocket_lazyload_background_images', true ) ) { $html = $this->image->lazyloadBackgroundImages( $html, $buffer ); } + + $html = $this->add_meta_comment( 'lazyload_images', $html ); } return $html; diff --git a/inc/Engine/Optimization/DeferJS/DeferJS.php b/inc/Engine/Optimization/DeferJS/DeferJS.php index 70f27fe0cc..6d73858135 100644 --- a/inc/Engine/Optimization/DeferJS/DeferJS.php +++ b/inc/Engine/Optimization/DeferJS/DeferJS.php @@ -5,8 +5,11 @@ use WP_Rocket\Admin\Options_Data; use WP_Rocket\Engine\Optimization\DynamicLists\DefaultLists\DataManager; +use WP_Rocket\Engine\Support\CommentTrait; class DeferJS { + use CommentTrait; + /** * Options instance * @@ -86,7 +89,7 @@ public function defer_js( string $html ): string { $html = str_replace( $tag[0], $deferred_tag, $html ); } - return $html; + return $this->add_meta_comment( 'defer_js', $html ); } /** diff --git a/inc/Engine/Optimization/DelayJS/HTML.php b/inc/Engine/Optimization/DelayJS/HTML.php index 7acd06bc09..05cfe4971d 100644 --- a/inc/Engine/Optimization/DelayJS/HTML.php +++ b/inc/Engine/Optimization/DelayJS/HTML.php @@ -6,10 +6,12 @@ use WP_Rocket\Admin\Options_Data; use WP_Rocket\Engine\Optimization\DynamicLists\DefaultLists\DataManager; use WP_Rocket\Engine\Optimization\RegexTrait; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Logger\Logger; class HTML { use RegexTrait; + use CommentTrait; /** * Plugin options instance. @@ -122,7 +124,9 @@ function ( $value ) { $this->excluded ); - return $this->parse( $html ); + $html = $this->parse( $html ); + + return $this->add_meta_comment( 'delay_js', $html ); } /** diff --git a/inc/Engine/Optimization/LazyRenderContent/Frontend/Controller.php b/inc/Engine/Optimization/LazyRenderContent/Frontend/Controller.php index df9a478ada..e7533f587d 100644 --- a/inc/Engine/Optimization/LazyRenderContent/Frontend/Controller.php +++ b/inc/Engine/Optimization/LazyRenderContent/Frontend/Controller.php @@ -6,8 +6,11 @@ use WP_Rocket\Engine\Common\Context\ContextInterface; use WP_Rocket\Engine\Common\PerformanceHints\Frontend\ControllerInterface; use WP_Rocket\Engine\Optimization\LazyRenderContent\Frontend\Processor\Processor; +use WP_Rocket\Engine\Support\CommentTrait; class Controller implements ControllerInterface { + use CommentTrait; + /** * Processor instance * @@ -69,7 +72,9 @@ public function optimize( string $html, $row ): string { $html = $result; $html = $this->remove_hashes( $html ); - return $this->add_css( $html ); + $html = $this->add_css( $html ); + + return $this->add_meta_comment( 'automatic_lazy_rendering', $html ); } /** diff --git a/inc/Engine/Optimization/Minify/CSS/Minify.php b/inc/Engine/Optimization/Minify/CSS/Minify.php index 69431919e1..6e94222aa0 100644 --- a/inc/Engine/Optimization/Minify/CSS/Minify.php +++ b/inc/Engine/Optimization/Minify/CSS/Minify.php @@ -4,6 +4,7 @@ use WP_Rocket\Dependencies\Minify as Minifier; use WP_Rocket\Engine\Optimization\CSSTrait; use WP_Rocket\Engine\Optimization\Minify\ProcessorInterface; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Logger\Logger; /** @@ -13,6 +14,7 @@ */ class Minify extends AbstractCSSOptimization implements ProcessorInterface { use CSSTrait; + use CommentTrait; /** * Minifies CSS files @@ -77,7 +79,7 @@ public function optimize( $html ) { $html = $this->replace_style( $style, $minify_url, $html ); } - return $html; + return $this->add_meta_comment( 'minify_css', $html ); } /** diff --git a/inc/Engine/Optimization/Minify/JS/Combine.php b/inc/Engine/Optimization/Minify/JS/Combine.php index cf6e75a941..2658ee4c32 100644 --- a/inc/Engine/Optimization/Minify/JS/Combine.php +++ b/inc/Engine/Optimization/Minify/JS/Combine.php @@ -7,6 +7,7 @@ use WP_Rocket\Engine\Optimization\DeferJS\DeferJS; use WP_Rocket\Engine\Optimization\DynamicLists\DynamicLists; use WP_Rocket\Engine\Optimization\Minify\ProcessorInterface; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Logger\Logger; /** @@ -15,6 +16,8 @@ * @since 3.1 */ class Combine extends AbstractJSOptimization implements ProcessorInterface { + use CommentTrait; + /** * Minifier instance * @@ -155,7 +158,7 @@ public function optimize( $html ) { ] ); - return $html; + return $this->add_meta_comment( 'minify_concatenate_js', $html ); } /** diff --git a/inc/Engine/Optimization/Minify/JS/Minify.php b/inc/Engine/Optimization/Minify/JS/Minify.php index 91961cf9d6..56bc094087 100644 --- a/inc/Engine/Optimization/Minify/JS/Minify.php +++ b/inc/Engine/Optimization/Minify/JS/Minify.php @@ -3,6 +3,7 @@ use WP_Rocket\Dependencies\Minify as Minifier; use WP_Rocket\Engine\Optimization\Minify\ProcessorInterface; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Logger\Logger; /** @@ -11,6 +12,8 @@ * @since 3.1 */ class Minify extends AbstractJSOptimization implements ProcessorInterface { + use CommentTrait; + /** * Minifies JS files * @@ -111,7 +114,7 @@ public function optimize( $html ) { $html = $this->replace_script( $script, $minify_url, $html ); } - return $html; + return $this->add_meta_comment( 'minify_js', $html ); } /** diff --git a/inc/Engine/Optimization/RUCSS/Controller/UsedCSS.php b/inc/Engine/Optimization/RUCSS/Controller/UsedCSS.php index 8cbb154ffd..6c19692474 100644 --- a/inc/Engine/Optimization/RUCSS/Controller/UsedCSS.php +++ b/inc/Engine/Optimization/RUCSS/Controller/UsedCSS.php @@ -10,10 +10,12 @@ use WP_Rocket\Engine\Optimization\RegexTrait; use WP_Rocket\Engine\Optimization\RUCSS\Database\Queries\UsedCSS as UsedCSS_Query; use WP_Rocket\Engine\Optimization\RUCSS\Jobs\Manager; +use WP_Rocket\Engine\Support\CommentTrait; class UsedCSS { use RegexTrait; use CSSTrait; + use CommentTrait; /** * UsedCss Query instance. @@ -165,7 +167,7 @@ public function treeshake( string $html ): string { $this->used_css_query->update_last_accessed( (int) $used_css->id ); } - return $html; + return $this->add_meta_comment( 'remove_unused_css', $html ); } /** diff --git a/inc/Engine/Preload/Fonts.php b/inc/Engine/Preload/Fonts.php index 891d9a958e..ae190ab932 100644 --- a/inc/Engine/Preload/Fonts.php +++ b/inc/Engine/Preload/Fonts.php @@ -4,6 +4,7 @@ use WP_Rocket\Admin\Options_Data; use WP_Rocket\Engine\CDN\CDN; +use WP_Rocket\Engine\Support\CommentTrait; use WP_Rocket\Event_Management\Subscriber_Interface; /** @@ -12,6 +13,7 @@ * @since 3.6 */ class Fonts implements Subscriber_Interface { + use CommentTrait; /** * WP Rocket Options instance. @@ -114,7 +116,15 @@ public function preload_fonts( $html ): string { ); } - return preg_replace( '##', $preloads, $html, 1 ); + $result = preg_replace( '##', $preloads, $html, 1 ); + + if ( null === $result ) { + return $html; + } + + $result = $this->add_meta_comment( 'preload_fonts', $result ); + + return $result; } /**