- WP Super Cache enabled (PHP mode, gzip, Nginx compatible) - Autoptimize: CSS/HTML minification + deferred JS + Google Fonts optimization - Cookie Notice: GDPR/LOPD banner styled with brand colors (navy/burgundy/gold) - Legal pages: Aviso Legal, Política de Privacidad, Política de Cookies (ES) - MU-plugin: custom footer with legal links + Cloud Host credit - Footer: copyright, legal nav, Hosted & Maintained by Cloud Host (cloudhost.es) - Security: X-Frame-Options, X-Content-Type, Referrer-Policy headers - Security: XML-RPC disabled, REST user enumeration blocked - Performance: emoji scripts removed, post revisions limited to 3
70 lines
1.7 KiB
PHP
70 lines
1.7 KiB
PHP
<?php
|
|
/**
|
|
* Thin wrapper around css minifiers to avoid rewriting a bunch of existing code.
|
|
*/
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
class autoptimizeCSSmin
|
|
{
|
|
/**
|
|
* Minifier instance.
|
|
*
|
|
* @var Autoptimize\tubalmartin\CssMin\Minifier|null
|
|
*/
|
|
protected $minifier = null;
|
|
|
|
/**
|
|
* Construtor.
|
|
*
|
|
* @param bool $raise_limits Whether to raise memory limits or not. Default true.
|
|
*/
|
|
public function __construct( $raise_limits = true )
|
|
{
|
|
$this->minifier = new Autoptimize\tubalmartin\CssMin\Minifier( $raise_limits );
|
|
}
|
|
|
|
/**
|
|
* Runs the minifier on given string of $css.
|
|
* Returns the minified css.
|
|
*
|
|
* @param string $css CSS to minify.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function run( $css )
|
|
{
|
|
// hide calc() if filter says yes (as YUI CSS compressor PHP port has problems retaining spaces around + and - operators).
|
|
// regex see tests at https://regex101.com/r/ofGQG9/1
|
|
if ( apply_filters( 'autoptimize_filter_css_hide_calc', true ) ) {
|
|
$css = autoptimizeBase::replace_contents_with_marker_if_exists( 'CALC', 'calc(', '#(calc|min|max|clamp)\([^;}]*\)#m', $css );
|
|
}
|
|
|
|
// minify.
|
|
$result = $this->minifier->run( $css );
|
|
|
|
// restore calc() if filter says yes.
|
|
if ( apply_filters( 'autoptimize_filter_css_hide_calc', true ) ) {
|
|
$result = autoptimizeBase::restore_marked_content( 'CALC', $result );
|
|
}
|
|
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* Static helper.
|
|
*
|
|
* @param string $css CSS to minify.
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function minify( $css )
|
|
{
|
|
$minifier = new self();
|
|
|
|
return $minifier->run( $css );
|
|
}
|
|
}
|