File Editor
Directories:
.. (Back)
scripts
styles
Files:
advanced-custom-fields-pro.php
advanced-custom-fields.php
amazon-s3-and-cloudfront-pro.php
amazon-s3-and-cloudfront.php
autoptimize.php
caldera-forms.php
cartflows.php
cdn-enabler.php
coursepress.php
divi-filterable-blog-module.php
divi-module-code-snippet.php
divi-testimonial-slider.php
divi_layout_injector.php
divi_woo_layout_injector.php
dk-pdf.php
ds-divi-rocket.php
easy-digital-downloads.php
eventon.php
events-manager.php
final-tiles-grid-gallery-lite.php
gravityforms.php
gravityformssignature.php
ht-knowledge-base.php
imagify.php
insert-pages.php
jucra-acf-google-maps-for-divi.php
kvcore-idx.php
landing-pages.php
m-chart.php
mappress-google-maps-for-wordpress.php
megamenu.php
modern-events-calendar-lite.php
nex-forms-express-wp-form-builder.php
paid-memberships-pro.php
photo-gallery.php
pilotpress.php
popup-maker.php
relevanssi-premium.php
relevanssi.php
sellsy.php
seo-by-rank-math.php
sfwd-lms.php
sg-cachepress.php
siteorigin-panels.php
sitepress-multilingual-cms.php
table-of-contents-plus.php
the-events-calendar-community-events.php
the-events-calendar.php
toolbar-publish-button.php
woo-paypalplus.php
woocommerce.php
wordpress-mu-domain-mapping.php
wordpress-seo.php
wp-job-manager.php
wp-responsive-table.php
wp-rocket.php
wp-smush-pro.php
wp-smushit.php
wp-views.php
wp3d-models.php
wpml-sticky-links.php
yith-woocommerce-dynamic-pricing-and-discounts-premium.php
Create New File
Create
Edit File: sg-cachepress.php
<?php /** * Plugin compatibility for Siteground Optimizer. * * @package Divi * @subpackage Builder * @since 4.11.0 */ if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } /** * Plugin compatibility for SiteGround Optimizer * * @since 4.11.0 * * @link https://wordpress.org/plugins/sg-cachepress/ */ class ET_Builder_Plugin_Compat_SiteGround_Optimizer extends ET_Builder_Plugin_Compat_Base { /** * Excluded stylesheets. * * @var null */ private $_excluded = []; /** * Constructor */ public function __construct() { $this->plugin_id = 'sg-cachepress/sg-cachepress.php'; $this->init_hooks(); } /** * Hook methods to WordPress. * * @return void */ public function init_hooks() { if ( ! is_plugin_active( $this->plugin_id ) ) { return; } // Do nothing if it's not on frontend. if ( ! et_builder_is_frontend() ) { return; } // Do nothing if Dynamic CSS and Critical CSS are disabled. if ( ! ( et_use_dynamic_css() || et_builder_is_critical_enabled() ) ) { return; } add_filter( 'et_core_page_resource_tag', [ $this, 'get_page_resource_handles' ], 10, 3 ); add_filter( 'sgo_css_combine_exclude', [ $this, 'exclude_inline_styles_from_siteground_cache' ], 11 ); } /** * Get PageResource handles. * * @param string $tag HTML tag. * @param string $handle Resource handle. * @param string $src Resource src. * * @since 4.14.3 * * @return string */ public function get_page_resource_handles( $tag, $handle, $src ) { if ( empty( $src ) ) { return; } // Some styles we enqueue too late for wp_enqueue_style so the markup is printed directly. // However, SG Optimizer can only exclude registered styles, hence we do it now. if ( ! wp_style_is( $handle, 'registered' ) ) { $handle .= '-cachepress'; wp_register_style( $handle, $src, [], ET_BUILDER_VERSION ); } $this->_excluded[] = $handle; return $tag; } /** * Exclude styles from being combined in SiteGround cache. * * @param array $excluded Excluded styles from being combined. */ public function exclude_inline_styles_from_siteground_cache( $excluded ) { global $wp_styles, $shortname; $prefix = 'divi-builder'; if ( 'divi' === $shortname ) { $prefix = 'divi'; } elseif ( 'extra' === $shortname ) { $prefix = 'extra'; } $registered = array_keys( $wp_styles->registered ); foreach ( $registered as $handle ) { // Exclude all our styles. if ( false !== strpos( $handle, $prefix ) ) { $excluded[] = $handle; } } return array_merge( $this->_excluded, $excluded ); } } new ET_Builder_Plugin_Compat_SiteGround_Optimizer();
Save Changes
Rename File
Rename