更新日期:2023-07-31
最近台北市長選戰正打的激烈,連網站都被揪出來『鞭』一下,像是 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 並不一定要寫,況且寫了『有些搜尋引擎』不一定會照你的規則走。
2020-11-05
從 版本 5.5 開始多了自動產生 sitmap 功能,你會在 robots.txt 裡面看到: Sitemap: https://www.abc.com/wp-sitemap.xml
你可以使用語法禁用顯示 sitemap:
add_filter( 'wp_sitemaps_enabled', '__return_false' );
2014-08-25 at 00:42:57
哇!你哪時又有這一個了。
你可以一個網站套那麼多版,真是不簡單。
我是子主題也可以寫在 functions.php的子主題下嗎
2014-08-25 at 01:00:59
我打算把 wordpress 相關的內容通通集中在這邊,所以這是另一個站囉。
2014-08-25 at 01:09:50
ha
這個主題真美,你自做的嗎?
不花俏又好看,彈性不錯
2014-08-28 at 10:19:06
這是從後台裡面的佈景主題挑的。
2014-09-02 at 21:25:59
這個主題我大概知道,也翻譯好了,但現在沒心情去改變。
可不可以用多站台的方法呢?呵