How to remove rest api link: in http headers?
Question
i would like to remove the "link:" line added to the http headers since wordpress 4.4
here is a
curl -I killcandida.org
here is the output extract of the line that i would like to delete:
Link: <http://killcandida.org/wp-json/>; rel="https://api.w.org/"
Note that i don't talk here about html headers but http headers.
Solution
The output is generated by the rest_output_link_header(). This function is used in two actions, wp_head and template_redirect in default-filters.php:@line234. You can remove the function from those hooks to remove the output you wanted to remove. Put the following codes in your theme's functions.php to achieve the desired result.
remove_action( 'wp_head', 'rest_output_link_wp_head', 10);
remove_action( 'template_redirect', 'rest_output_link_header', 11);
Both actions are defined in ABSPATH/wp-includes/default-filters.php
under // REST API filters.
Licensed under: CC-BY-SA with attribution
Not affiliated with wordpress.stackexchange