| Server IP : 193.146.211.90 / Your IP : 10.85.6.55 Web Server : Apache System : Linux wordpress-gti-69dcdb54f7-n4wdq 6.11.8-arch1-2 #1 SMP PREEMPT_DYNAMIC Fri, 15 Nov 2024 15:35:07 +0000 x86_64 User : 1001 ( 1001) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /bitnami/wordpress/wp-content/plugins/w3-total-cache/ |
Upload File : |
<?php
namespace W3TC;
class UserExperience_LazyLoad_Mutator_Unmutable {
private $placeholders = array();
private $placeholder_base = '';
public function __construct() {
$this->placeholder_base = 'w3tc_lazyload_' .
md5( isset( $_SERVER['REQUEST_TIME'] ) ? sanitize_text_field( wp_unslash( $_SERVER['REQUEST_TIME'] ) ) : '' ) . '_';
}
public function remove_unmutable( $buffer ) {
// scripts
$buffer = preg_replace_callback(
'~<script(\b[^>]*)>(.*?)</script>~is',
array( $this, 'placeholder' ), $buffer );
// styles
$buffer = preg_replace_callback(
'~\s*<style(\b[^>]*)>(.*?)</style>~is',
array($this, 'placeholder'), $buffer);
return $buffer;
}
public function restore_unmutable( $buffer ) {
return str_replace(
array_keys( $this->placeholders ),
array_values( $this->placeholders ),
$buffer
);
}
public function placeholder( $matches ) {
$key = '{' .$this->placeholder_base . count( $this->placeholders ) . '}';
$this->placeholders[$key] = $matches[0];
return $key;
}
}