| Server IP : 37.27.51.148 / Your IP : 216.73.216.140 Web Server : nginx/1.14.1 System : Linux libra 4.18.0-553.51.1.el8_10.x86_64 #1 SMP Wed Apr 30 20:24:04 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.3.31 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/wp-rocket/inc/ThirdParty/Hostings/ |
Upload File : |
<?php
namespace WP_Rocket\ThirdParty\Hostings;
use WP_Rocket\Event_Management\Subscriber_Interface;
/**
* Subscriber for compatibility with PRO ISP hosting.
*
* @since 3.13.1
*/
class ProIsp implements Subscriber_Interface {
/**
* Array of events this subscriber wants to listen to.
*
* @return array
*/
public static function get_subscribed_events() {
return [
'do_rocket_varnish_http_purge' => 'is_varnish_active',
'rocket_varnish_field_settings' => 'maybe_set_varnish_addon_title',
'rocket_display_input_varnish_auto_purge' => 'should_display_varnish_auto_purge_input',
];
}
/**
* Purge varnish cache.
*
* @return boolean
*/
public function should_display_varnish_auto_purge_input(): bool {
return ! $this->is_varnish_active();
}
/**
* Set varnish addon title
*
* @param array $settings Varnish settings field data.
* @return array
*/
public function maybe_set_varnish_addon_title( array $settings ): array {
// Bail out if varnish is disabled.
if ( ! $this->is_varnish_active() ) {
return $settings;
}
$settings['varnish_auto_purge']['title'] = sprintf(
// Translators: %s = Hosting name.
__( 'Your site is hosted on %s, we have enabled Varnish auto-purge for compatibility.', 'rocket' ),
'PRO ISP'
);
return $settings;
}
/**
* Check if varnish option is enabled.
*
* @return boolean
*/
public function is_varnish_active() {
return rocket_get_constant( 'vcaching', false ) && rest_sanitize_boolean( get_option( 'varnish_caching_enable' ) );
}
}