最近台北市長選戰正打的激烈,連網站都被揪出來『鞭』一下,像是 robots.txt 檔的寫法,究竟應該怎麼寫才好?Allow 和 Disallow 是否有先後順序的差別,各位可以參考一下 google 的怎麼寫,接著這邊教你如何改寫 wordpress 的 robots.txt 預設內容。

 

你在 wordpress 根目錄下是找不到 robots.txt 這支檔案的,但系統會依據搜尋引擎的造訪自動生成。若是你設定『阻擋搜尋引擎索引這個網站』,那麼它會生成以下內容,

User-agent: *
Disallow: /

若是沒有設定阻擋,那就會生成這樣子:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/

 

底下教你如何改寫原本的預設內容。一樣把下列的語法寫在你正在使用的佈景內的 functions.php

add_filter( 'robots_txt', 'robots_mod', 10, 2 );
function robots_mod( $output, $public ) {
  $output = "User-agent: *\n";
  if( get_option( 'blog_public' ) == '0' )
  {
    // 你設定阻擋搜尋引擎索引這個網站
    $output .= "Disallow: /\n";
  }
  else
  {
    // 注意,以下語法需要了解 robots.txt 的撰寫規則
    // 請依照自己的需求自行填寫
    $output .= "Disallow: /wp-admin/\n";
    $output .= "Disallow: /wp-includes/\n";
    $output .= "Allow: /wp-content/uploads/\n";			
  }
  return $output;
}

 

補充

robots.txt 並不一定要寫,況且寫了『有些搜尋引擎』不一定會照你的規則走。