Из-за отключения тех или иных элементов WordPress может перестать работать нужный вам функционал или вообще работоспособность плагинов. Отключение всех элементов производите если вам это действительно не нужно и вы понимаете для чего это делаете.
После каждого отключения проводите проверку на работоспособность необходимых вам элементов сайта.
Добавляете данные коды в файл function.php
и все. Функционал будет отключен.
Отключаем ленты RSS
Отключение всех лент rss
// Отключение rss-ленты
function fb_disable_feed() {
wp_redirect(get_option('siteurl'));
}
add_action('do_feed', 'fb_disable_feed', 1);
add_action('do_feed_rdf', 'fb_disable_feed', 1);
add_action('do_feed_rss', 'fb_disable_feed', 1);
add_action('do_feed_rss2', 'fb_disable_feed', 1);
add_action('do_feed_atom', 'fb_disable_feed', 1);
remove_action( 'wp_head', 'feed_links_extra', 3 );
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'rsd_link' );
Выборочное отключение rss
// Удаляет ссылки RSS-лент записи и комментариев
remove_action( 'wp_head', 'feed_links', 2 );
// Удаляет ссылки RSS-лент категорий и архивов
remove_action( 'wp_head', 'feed_links_extra', 3 );
Удалить RSD ссылку (xmlrpc.php)
remove_action( 'wp_head', 'rsd_link' );
Удалить ссылку Windows для Live Writer (wlwmanifest)
remove_action( 'wp_head', 'wlwmanifest_link' );
Отключить Rest API
К отключению данного функционала подходите с особой осторожностью, на данном функционале может быть завязана работа используемых вами плагинов.
/*
* Отключаем REST API
*/
// Отключаем сам REST API
add_filter('rest_enabled', '__return_false');
// Отключаем фильтры REST API
remove_action( 'xmlrpc_rsd_apis', 'rest_output_rsd' );
remove_action( 'wp_head', 'rest_output_link_wp_head', 10, 0 );
remove_action( 'template_redirect', 'rest_output_link_header', 11, 0 );
remove_action( 'auth_cookie_malformed', 'rest_cookie_collect_status' );
remove_action( 'auth_cookie_expired', 'rest_cookie_collect_status' );
remove_action( 'auth_cookie_bad_username', 'rest_cookie_collect_status' );
remove_action( 'auth_cookie_bad_hash', 'rest_cookie_collect_status' );
remove_action( 'auth_cookie_valid', 'rest_cookie_collect_status' );
remove_filter( 'rest_authentication_errors', 'rest_cookie_check_errors', 100 );
// Отключаем события REST API
remove_action( 'init','rest_api_init' );
remove_action( 'rest_api_init', 'rest_api_default_filters', 10, 1 );
remove_action( 'parse_request', 'rest_api_loaded' );
// Отключаем Embeds связанные с REST API
remove_action( 'rest_api_init','wp_oembed_register_route');
remove_filter( 'rest_pre_serve_request', '_oembed_rest_pre_serve_request', 10, 4 );
remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
remove_action( 'template_redirect', 'rest_output_link_header', 11, 0 );
remove_action( 'wp_head', 'rest_output_link_wp_head' );
// если собираетесь выводить вставки из других сайтов на своем, то закомментируйте след. строку.
remove_action( 'wp_head','wp_oembed_add_host_js');
Удалить короткую ссылку
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0);
Удалить информацию о версии WordPress
remove_action( 'wp_head', 'wp_generator' );
Удалить ссылки на предыдущую и следующую статьи
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 );
Отключить поддержку Emoji
/*
* Отключаем Emojii
*/
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( 'tiny_mce_plugins', 'disable_wp_emojis_in_tinymce' );
function disable_wp_emojis_in_tinymce( $plugins ) {
if ( is_array( $plugins ) ) {
return array_diff( $plugins, array( 'wpemoji' ) );
} else {
return array();
}
}
Отключить dns-prefetch
remove_action( 'wp_head', 'wp_resource_hints', 2 );
Отключить .recentcomments
function wpplugins_remove_recentcomments() {
global $wp_widget_factory;
remove_action( 'wp_head', array( $wp_widget_factory->widgets['WP_Widget_Recent_Comments'], 'recent_comments_style' ) );
}
add_action('widgets_init', 'wpplugins_remove_recentcomments');
Yoast
При формировании xml карты сайта, плагин yoast создаёт теги картинок image:image. Данный тег не понимает yandex и вывод данного тега нужно отключить
/**
* Удаление картинок из xml-карты Yoast
*/
add_filter( 'wpseo_xml_sitemap_img', '__return_false' );
Отключить / удалить схему JSON + LD
В случае если вам не нужно формируемое плагином json shema.org то её можно отключить
add_filter( 'wpseo_json_ld_output', '__return_empty_array' );
При необходимости отключить OpenGraph через хуки
add_action('wp_head', 'remove_all_wpseo_og', 1);
function remove_all_wpseo_og() {
remove_action( 'wpseo_head', array( $GLOBALS['wpseo_og'], 'opengraph' ), 30 );
}
По элементное отключение OpenGraph
add_filter('wpseo_opengraph_url' , '__return_false' );
add_filter('wpseo_opengraph_desc', '__return_false' );
add_filter('wpseo_opengraph_title', '__return_false' );
add_filter('wpseo_opengraph_type', '__return_false' );
add_filter('wpseo_opengraph_site_name', '__return_false' );
Если вы не хотите или не умеете работать с кодом
Существует большое количество плагинов которые отключают разные элементы по отдельности и все разом, если вы все таки решили воспользоваться плагином, то все действия описанные выше можно выполнить с помощью плагина Clearfy