From 693bac66b199972d0eca1dbc25162fd536987d72 Mon Sep 17 00:00:00 2001 From: Dan0sz <18595395+Dan0sz@users.noreply.github.com> Date: Mon, 7 Oct 2024 20:47:29 +0200 Subject: [PATCH] Added: Autoptimize compatibility for Minimal Analytics. --- includes/class-compatibility.php | 4 ++ includes/compatibility/class-autoptimize.php | 43 ++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 includes/compatibility/class-autoptimize.php diff --git a/includes/class-compatibility.php b/includes/class-compatibility.php index 324d407..3b3a9e7 100644 --- a/includes/class-compatibility.php +++ b/includes/class-compatibility.php @@ -27,6 +27,10 @@ public function __construct() { * @return void */ private function init() { + if ( defined( 'AUTOPTIMIZE_PLUGIN_VERSION' ) ) { + new CAOS_Compatibility_Autoptimize(); + } + if ( defined( 'LSCWP_V' ) ) { new CAOS_Compatibility_Litespeed(); } diff --git a/includes/compatibility/class-autoptimize.php b/includes/compatibility/class-autoptimize.php new file mode 100644 index 0000000..1eaf1df --- /dev/null +++ b/includes/compatibility/class-autoptimize.php @@ -0,0 +1,43 @@ +init(); + } + + /** + * Action and filter hooks. + * + * @return void + */ + private function init() { + add_filter( 'caos_script_custom_attributes', [ $this, 'exclude_from_autoptimize' ] ); + } + + /** + * Add data-no-optimize="1" attribute to script if LiteSpeed Cache is enabled. + * + * @param $attributes + * + * @return string + */ + public function exclude_from_autoptimize( $attributes ) { + return 'data-noptimize="true" ' . $attributes; + } +} \ No newline at end of file