Это кривоподелие, которое Wordpress, сегодня весь мозг съело.
В общем, задача простая - потребовалось убрать все RSS, кроме основного, общего. И все ссылки на эти RSS. Казалось бы, просто.
Код:
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'feed_links_extra',3);
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'feed_links', 2);
в functions.php удаляет все ссылки в страницах на RSS. Все просто. Но вот засада, все попытки удалить уже сами страницы, т.е. чтобы на .../feed/ выдавался 404 или 410 код... Уперся рогом. В разных вариантах лучшее, чего добивался - редирект на 404 код. Что, мягко говоря, через одно место. Терпение треснуло. Тупой и тугой, но работающий вариант:
Код:
function ok_parse_query($query) {
$pos=strpos($_SERVER["REQUEST_URI"],'/feed/');
if($pos>1) {
header("HTTP/1.1 410 Deleted");
die();
}
}
add_filter('parse_query', 'ok_parse_query', 1000, 1);