| Server IP : 89.108.64.180 / Your IP : 216.73.217.92 Web Server : Apache/2.4.41 (Ubuntu) System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-root ( 1010) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/hotel1.agast.ru/wp-content/plugins/hostinger/includes/ |
Upload File : |
<?php
namespace Hostinger;
use Hostinger\Admin\PluginSettings;
use Hostinger\WpHelper\Utils;
defined( 'ABSPATH' ) || exit;
class Hooks {
public function __construct() {
// XMLRpc / Force SSL
add_filter( 'xmlrpc_enabled', array( $this, 'check_xmlrpc_enabled' ) );
add_filter( 'wp_headers', array( $this, 'check_pingback' ) );
add_filter( 'plugins_loaded', array( $this, 'plugins_loaded' ) );
}
/**
* @return void
*/
public function plugins_loaded() {
$utils = new Utils();
$plugin_settings = new PluginSettings();
$settings = $plugin_settings->get_plugin_settings();
if ( defined( 'WP_CLI' ) && \WP_CLI ) {
return;
}
// Xmlrpc.
if ( $settings->get_disable_xml_rpc() && $utils->isThisPage( 'xmlrpc.php' ) ) {
exit( 'Disabled' );
}
// SSL redirect.
if ( $settings->get_force_https() && ! is_ssl() ) {
if ( isset( $_SERVER['HTTP_HOST'] ) && isset( $_SERVER['REQUEST_URI'] ) ) {
$host = sanitize_text_field( wp_unslash( $_SERVER['HTTP_HOST'] ) );
if ( $settings->get_force_www() && strpos( $host, 'www.' ) === false ) {
$host = 'www.' . $host;
}
wp_safe_redirect( 'https://' . $host . sanitize_text_field( wp_unslash( $_SERVER['REQUEST_URI'] ) ), 301 );
exit;
}
}
// Force www.
if ( $settings->get_force_www() ) {
if ( isset( $_SERVER['HTTP_HOST'] ) && isset( $_SERVER['REQUEST_URI'] ) ) {
$host = sanitize_text_field( wp_unslash( $_SERVER['HTTP_HOST'] ) );
if ( strpos( $host, 'www.' ) === false ) {
wp_safe_redirect( 'https://www.' . $host . sanitize_text_field( wp_unslash( $_SERVER['REQUEST_URI'] ) ), 301 );
exit;
}
}
}
}
/**
* @param mixed $headers
*
* @return mixed
*/
public function check_pingback( $headers ) {
$plugin_settings = new PluginSettings();
$settings = $plugin_settings->get_plugin_settings();
if ( $settings->get_disable_xml_rpc() ) {
unset( $headers['X-Pingback'] );
}
return $headers;
}
/**
* @return bool
*/
public function check_xmlrpc_enabled(): bool {
$plugin_settings = new PluginSettings();
$settings = $plugin_settings->get_plugin_settings();
if ( $settings->get_disable_xml_rpc() ) {
return false;
}
return true;
}
}