WordPress は head 内にフィード用のタグや前の記事、次の記事のタグを自動で入れます。実際に入れているコードは wp_includes 内の default-filters.php に書かれています。コードを見てみると、add_action
で、wp_head にフックしているのが分かります。
そのため、head 内の不要なタグを書き出すフックを function.php で削除します。
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'print_emoji_detection_script', 3);
remove_action('wp_head', 'rel_canonical');
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'wp_shortlink_wp_head');
remove_action('wp_print_styles', 'print_emoji_styles');
remove_action('wp_head', 'feed_links', 2);
を入れると、記事のフィードタグもなくなってしまうので、必要な場合は header.php にタグを追加します。
<link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> « RSS" href="<?php bloginfo('rss2_url'); ?>" />
また、remove_action('wp_head', 'feed_links', 2);
は代わりに add_theme_support('automatic-feed-links');
を削除してもフィードはなくなります。