| Server IP : 185.252.147.100 / Your IP : 216.73.216.196 Web Server : nginx/1.27.3 System : Linux mitrofanov.ru 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) x86_64 User : mitr ( 1000) PHP Version : 8.2.29 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/html/epauto.ru/wordpress/wp-content/mu-plugins/ |
Upload File : |
<?php
// Полностью отключаем все автоматические обновления
// define( 'AUTOMATIC_UPDATER_DISABLED', true );
// // Запрещаем любые внешние HTTP-запросы, включая проверку обновлений
// define( 'WP_HTTP_BLOCK_EXTERNAL', true );
// или
// Отключаем любые проверки и автообновления
add_filter( 'automatic_updater_disabled', '__return_true' );
add_filter( 'auto_update_core', '__return_false' );
add_filter( 'auto_update_plugin', '__return_false' );
add_filter( 'auto_update_theme', '__return_false' );
add_filter( 'auto_update_translation', '__return_false' );
// Очищаем очередь всех запланированных задач (cron), связанных с проверкой и обновлением
remove_action( 'init', 'wp_schedule_update_checks' );
wp_clear_scheduled_hook( 'wp_version_check' );
wp_clear_scheduled_hook( 'wp_update_plugins' );
wp_clear_scheduled_hook( 'wp_update_themes' );
wp_clear_scheduled_hook( 'wp_maybe_auto_update' );
// Предотвращаем проверки при загрузке админ-панели
remove_action( 'admin_init', '_maybe_update_core' );
remove_action( 'admin_init', '_maybe_update_plugins' );
remove_action( 'admin_init', '_maybe_update_themes' );
remove_action( 'load-plugins.php', 'wp_update_plugins' );
remove_action( 'load-themes.php', 'wp_update_themes' );
//Отключение встроенных стилей Gutenberg на фронте (для незалогиненных)
add_action('wp_enqueue_scripts', function() {
if ( ! is_user_logged_in() ) {
wp_dequeue_style('wp-block-library');
wp_dequeue_style('wp-block-library-theme');
wp_dequeue_style('global-styles');
wp_dequeue_style('classic-theme-styles');
}
});
// Удаление версий из параметров скриптов и стилей (повышает безопасность)
// add_filter('style_loader_src', 'remove_version_query', 9999);
// add_filter('script_loader_src', 'remove_version_query', 9999);
// function remove_version_query($src) {
// if ( strpos($src, 'ver=') ) {
// $src = remove_query_arg('ver', $src);
// }
// return $src;
// }
// Блокировка доступа к xmlrpc.php (Apache/nginx делают лучше, но можно и через PHP)
add_action('init', function() {
if ( strpos($_SERVER['REQUEST_URI'], 'xmlrpc.php') !== false ) {
wp_die('XML-RPC is disabled.', 'Forbidden', 403);
}
});
// Rest Auth
add_filter( 'rest_authentication_errors', function( $result ) {
if( is_null( $result ) && ! current_user_can('edit_others_posts') ){
return new WP_Error(
'rest_forbidden',
'Rest was disabled forever.',
array( 'status' => 401 )
);
}
return $result;
});
// Убираем ссылки на REST из <head> и заголовков
add_action( 'after_setup_theme', function () {
remove_action( 'wp_head', 'rest_output_link_wp_head', 10 );
remove_action( 'template_redirect', 'rest_output_link_header', 11 );
} );
// отключает только JSONP-поддержку, не влияет на обычный REST
add_filter('rest_jsonp_enabled', '__return_false');
// Отключаем эмодзи WordPress
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('admin_print_scripts', 'print_emoji_detection_script');
remove_action('wp_print_styles', 'print_emoji_styles');
remove_action('admin_print_styles', 'print_emoji_styles');
remove_filter('the_content_feed', 'wp_staticize_emoji');
remove_filter('comment_text_rss', 'wp_staticize_emoji');
remove_filter('wp_mail', 'wp_staticize_emoji_for_email');
add_filter('emoji_svg_url', '__return_false');
// Убираем DNS-prefetch для emoji cdn
add_filter('wp_resource_hints', function($urls, $relation_type) {
if ('dns-prefetch' === $relation_type) {
$urls = array_filter($urls, function($url) {
return false === strpos($url, 'emoji');
});
}
return $urls;
}, 10, 2);
// Отключаем oEmbed
remove_action('wp_head', 'wp_oembed_add_discovery_links');
remove_action('wp_head', 'wp_oembed_add_host_js');
add_filter('embed_oembed_discover', '__return_false');
// Отключаем JS для встраивания
function my_disable_wp_embed() {
wp_deregister_script( 'wp-embed' );
}
add_action( 'wp_enqueue_scripts', 'my_disable_wp_embed' );
// Для админ-панели и страницы входа — по желанию
//add_action( 'admin_enqueue_scripts', 'my_disable_wp_embed' );
add_action( 'login_enqueue_scripts', 'my_disable_wp_embed' );
// Отключаем Dashicons для незалогиненных пользователей
add_action('wp_enqueue_scripts', function() {
if (!is_user_logged_in()) {
wp_dequeue_style('dashicons');
wp_deregister_style('dashicons');
}
});
// Отключаем jQuery Migrate
add_action('wp_default_scripts', function($scripts) {
if (!empty($scripts->registered['jquery'])) {
$scripts->registered['jquery']->deps = array_diff(
$scripts->registered['jquery']->deps,
['jquery-migrate']
);
}
});
// Чистим <head>
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'wp_shortlink_wp_head');
remove_action('template_redirect', 'wp_shortlink_header', 11);
remove_action('wp_head', 'wp_generator');
add_filter('the_generator', '__return_empty_string');
remove_action('wp_head', 'rest_output_link_wp_head');
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'feed_links', 2);
// Отключаем XML-RPC
add_filter('xmlrpc_enabled', '__return_false');
// Отключаем пингбэки полностью
add_filter('xmlrpc_methods', function($methods) {
unset($methods['pingback.ping']);
return $methods;
});
remove_action('wp_head', 'pingback_link');
// Отключаем самопингбэки (когда свои посты ссылаются на свои же)
add_action('pre_ping', function(&$links) {
$home = get_option('home');
foreach ($links as $l => $link) {
if (0 === strpos($link, $home)) {
unset($links[$l]);
}
}
});
// Замедляем Heartbeat до 120 секунд и отключаем на фронте
add_filter('heartbeat_settings', function($settings) {
if ( is_admin() ) {
$settings['interval'] = 120; // или 0, если хочешь совсем без heartbeat
}
return $settings;
});
add_action('wp_enqueue_scripts', function() {
wp_dequeue_script('heartbeat');
});
//Отключаем тесты!*******************
add_filter( 'site_status_tests', function( $tests ) {
// асинхронные запросы находятся в массиве 'async'
unset( $tests['async']['dotorg_communication'] );// Соединение с WordPress.org
unset( $tests['async']['background_updates'] );//Фоновые обновления
unset( $tests['async']['loopback_requests'] );//Петлевой запрос
// синхронные – в массиве 'direct'
unset( $tests['direct']['rest_availability'] );//Доступность REST API
/*wordpress_version – Версия WordPress,
plugin_version – Версии плагинов,
theme_version – Версии тем,
php_version – Версия PHP,
php_extensions – PHP расширения,
php_default_timezone – Часовой пояс PHP по умолчанию,
sql_server – Версия ПО СУБД,
utf8mb4_support – MySQL поддержка кодировки utf8mb4,
https_status – Статус HTTPS,
ssl_support – Безопасное подключение,
scheduled_events – Запланированные события WP_Cron,
http_requests – HTTP запросы,
debug_enabled – Включена отладка (имеется ввиду WP_DEBUG в wp-config.php),*/
return $tests;
} );
// Полное отключение комментариев (улучшенная версия)
add_action('init', function () {
// Поддержка комментариев и трекбеков для всех типов записей
foreach (get_post_types() as $post_type) {
if (post_type_supports($post_type, 'comments')) {
remove_post_type_support($post_type, 'comments');
remove_post_type_support($post_type, 'trackbacks');
}
}
// Закрываем комментарии на фронте
add_filter('comments_open', '__return_false', 20);
add_filter('pings_open', '__return_false', 20);
// Скрываем существующие комментарии
add_filter('comments_array', '__return_empty_array', 20);
}, 999); // ранний приоритет, чтобы перехватить все типы
// Редирект со страницы комментариев в админке
add_action('admin_init', function () {
global $pagenow;
if ($pagenow === 'edit-comments.php') {
wp_redirect(admin_url());
exit;
}
// Убираем метабокс комментариев с дашборда
remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');
});
// Удаляем пункт меню «Комментарии»
add_action('admin_menu', function () {
remove_menu_page('edit-comments.php');
});
// Убираем ссылку из админ-бара
add_action('admin_bar_menu', function () {
remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
}, 0);
/*Disable author page*****************************************/
add_action('wp', function () {
if ( is_author() ) {
wp_safe_redirect( home_url('/'), 301 );
exit;
}
});
add_filter('author_link', '__return_empty_string');