Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
最近客戶在網站上線之後,用 site:domain.com 的方式去搜尋自己的網站內容,發現 /feed 也被收錄在索引中,因此聯絡我們希望我們移除掉。
最根本的解決方法,是使用 sitemap 的方式,讓它根本不要被索引到,就可以解決客戶的問題了。不過因為客戶很「貼心」的準備表格,把被索引的頁面通通整理出來。為了不想要又被說怎麼點進去還是看到 feed 的 xml 格式文件,所以順手學了一下怎麼停用這個功能。
/**
* Reference: https://kinsta.com/knowledgebase/wordpress-disable-rss-feed/
*/
function itsme_disable_feed() {
wp_die( __( 'No feed available, please visit the <a href="'. esc_url( home_url( '/' ) ) .'" rel="nofollow">homepage</a>!' ) );
}
add_action('do_feed', 'itsme_disable_feed', 1);
add_action('do_feed_rdf', 'itsme_disable_feed', 1);
add_action('do_feed_rss', 'itsme_disable_feed', 1);
add_action('do_feed_rss2', 'itsme_disable_feed', 1);
add_action('do_feed_atom', 'itsme_disable_feed', 1);
add_action('do_feed_rss2_comments', 'itsme_disable_feed', 1);
add_action('do_feed_atom_comments', 'itsme_disable_feed', 1);
remove_action( 'wp_head', 'feed_links_extra', 3 );
remove_action( 'wp_head', 'feed_links', 2 );
建立函式 itsme_disable_feed,在使用者 (或是 feed 閱讀器) 要求連結的時候回傳已停用的資料。
remove_action 的目的是在將 wp_head 中自動生成的 feed 連結移除。
在操作上使用的是 Redirection 這套外掛。利用正則表達式將連往 feed 的連結,直接導回上層頁面中。