Начиная с WordPress 4.4 в ядро CMS добавлена поддержка REST API. Поддержка REST API выводит функционал WordPress совершенно на новый уровень, но в данный момент в большинстве случаев нет никакой необходимости. Чтобы отключить REST API в WordPress, необходимо просто добавить в файл functions.php
соответствующие фильтры.
Отключить сам 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);