Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/hostinge.../includes
File: ComingSoon.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace Hostinger;
[2] Fix | Delete
[3] Fix | Delete
use Hostinger\Admin\Options\PluginOptions;
[4] Fix | Delete
use Hostinger\Admin\PluginSettings;
[5] Fix | Delete
[6] Fix | Delete
defined( 'ABSPATH' ) || exit;
[7] Fix | Delete
[8] Fix | Delete
class ComingSoon {
[9] Fix | Delete
/**
[10] Fix | Delete
* @var PluginOptions
[11] Fix | Delete
*/
[12] Fix | Delete
private PluginOptions $plugin_options;
[13] Fix | Delete
[14] Fix | Delete
public function __construct() {
[15] Fix | Delete
$plugin_settings = new PluginSettings();
[16] Fix | Delete
$this->plugin_options = $plugin_settings->get_plugin_settings();
[17] Fix | Delete
[18] Fix | Delete
add_action( 'wp_footer', array( $this, 'register_styles' ) );
[19] Fix | Delete
add_action( 'template_redirect', array( $this, 'coming_soon' ) );
[20] Fix | Delete
add_filter( 'wp_headers', array( $this, 'modify_headers' ) );
[21] Fix | Delete
[22] Fix | Delete
// Fix deprecated warning.
[23] Fix | Delete
if ( has_action( 'wp_footer', 'the_block_template_skip_link' ) ) {
[24] Fix | Delete
remove_action( 'wp_footer', 'the_block_template_skip_link' );
[25] Fix | Delete
}
[26] Fix | Delete
}
[27] Fix | Delete
[28] Fix | Delete
/**
[29] Fix | Delete
* @return void
[30] Fix | Delete
*/
[31] Fix | Delete
public function coming_soon(): void {
[32] Fix | Delete
// Do not cache coming soon page.
[33] Fix | Delete
if ( has_action( 'litespeed_purge_all' ) && ! defined( 'DONOTCACHEPAGE' ) ) {
[34] Fix | Delete
define( 'DONOTCACHEPAGE', true );
[35] Fix | Delete
}
[36] Fix | Delete
[37] Fix | Delete
if ( ! $this->can_bypass_coming_soon() ) {
[38] Fix | Delete
include_once HOSTINGER_ABSPATH . 'includes/Views/ComingSoon.php';
[39] Fix | Delete
die;
[40] Fix | Delete
}
[41] Fix | Delete
}
[42] Fix | Delete
[43] Fix | Delete
/**
[44] Fix | Delete
* @return void
[45] Fix | Delete
*/
[46] Fix | Delete
public function register_styles(): void {
[47] Fix | Delete
wp_enqueue_style(
[48] Fix | Delete
'hostinger_main_styles',
[49] Fix | Delete
HOSTINGER_ASSETS_URL . '/css/coming-soon.min.css',
[50] Fix | Delete
array(),
[51] Fix | Delete
HOSTINGER_VERSION
[52] Fix | Delete
);
[53] Fix | Delete
}
[54] Fix | Delete
[55] Fix | Delete
/**
[56] Fix | Delete
* @param array $headers
[57] Fix | Delete
*
[58] Fix | Delete
* @return array
[59] Fix | Delete
*/
[60] Fix | Delete
public function modify_headers( array $headers ): array {
[61] Fix | Delete
$headers['Cache-Control'] = 'no-cache';
[62] Fix | Delete
[63] Fix | Delete
return $headers;
[64] Fix | Delete
}
[65] Fix | Delete
[66] Fix | Delete
/**
[67] Fix | Delete
* @return bool
[68] Fix | Delete
*/
[69] Fix | Delete
/** PHPCS:disable WordPress.Security.NonceVerification.Recommended */
[70] Fix | Delete
private function can_bypass_coming_soon(): bool {
[71] Fix | Delete
$bypass_code = isset( $_COOKIE['hostinger_bypass_code'] ) ? sanitize_text_field( $_COOKIE['hostinger_bypass_code'] ) : '';
[72] Fix | Delete
[73] Fix | Delete
if ( isset( $_GET['bypass_code'] ) && $this->plugin_options->get_bypass_code() === $_GET['bypass_code'] ) {
[74] Fix | Delete
setcookie( 'hostinger_bypass_code', $this->plugin_options->get_bypass_code() );
[75] Fix | Delete
$bypass_code = $this->plugin_options->get_bypass_code();
[76] Fix | Delete
}
[77] Fix | Delete
[78] Fix | Delete
if ( is_admin() ) {
[79] Fix | Delete
return true;
[80] Fix | Delete
}
[81] Fix | Delete
[82] Fix | Delete
if ( current_user_can( 'update_plugins' ) ) {
[83] Fix | Delete
return true;
[84] Fix | Delete
}
[85] Fix | Delete
[86] Fix | Delete
if ( ! empty( $bypass_code ) && $bypass_code === $this->plugin_options->get_bypass_code() ) {
[87] Fix | Delete
return true;
[88] Fix | Delete
}
[89] Fix | Delete
[90] Fix | Delete
return false;
[91] Fix | Delete
}
[92] Fix | Delete
/** PHPCS:enable */
[93] Fix | Delete
}
[94] Fix | Delete
[95] Fix | Delete
new ComingSoon();
[96] Fix | Delete
[97] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function