Day 27 Sitemap
主動製作一個 Sitemap 檔案放在網站上,然後主動填到 Google Search Console 中,或是等 Google 自己來抓,這樣可以有效地讓 Google 發現我們的網站並收錄到 Google Search 內。
是否該使用 sitemap?
以下是 Google 搜尋中心的建議:
- 可能會需要 Sitemap 的情況
-
網站規模極大:一般來說,在大型網站上,要確保網站上每個網頁至少都由一個其他網頁連結更為困難。因此,Googlebot 比較可能無法找到一些新網頁。
-
網站才剛建立,幾乎沒有外部連結:Googlebot 和其他網路檢索器是透過網頁層層連結的方式來檢索網頁,因此,如果沒有其他網站連結到您的網頁,Googlebot 可能就無法找到您的網頁。
-
網站包含許多互動式多媒體內容 (影片、圖片),或是顯示在 Google 新聞中:Google 會把 Stiemap 所提供的額外資訊納入搜尋範圍。
- 可能「不」需要 Sitemap 的情況
-
網站規模很「小」:所謂的規模很「小」,指的是網站的網頁數不超過 500 個 (以您認為有需要納入搜尋結果的網頁為準)。
-
網站內部的連結完善:這表示 Google 可以透過首頁的連結找出網站上所有的重要網頁。
-
要顯示在搜尋結果中的媒體檔案 (影片、圖片) 或新聞網頁數量不多:Sitemap 可協助 Google 在您的網站上找出影片和圖片檔或新聞報導,並加以解讀。如果您不需要讓這些內容出現在 Google 搜尋中,可能就不需要 Sitemap。
建立 Sitemap
建議讀者可以搭配原始碼一起閱讀,原始碼網址為 https://github.com/taichunmin/chameleon-ultra.js/blob/master/sitemap.ts
筆者在這個專案決定以 TypeScript 產生 XML 格式的 sitemap,首先先搜尋 dist
資料夾內的所有 *.html
,然後讀取環境變數中 BASEURL
來把所有的檔案路徑改寫成網址,然後在把網址清單組合成 XML 格式的 sitemap。
另外為了避免 sitemap.xml
檔案過大,所以筆者的程式選擇把 sitemap.xml
產生成 sitemap 索引檔的格式,然後把實際的網址放到另外的檔案中。
提交給 Google Search Console
我們產生完成的 sitemap.xml 要填到 Google Search Console 的 sitemap 欄位中,這樣 Google 才會知道我們的網站有哪些頁面。
參考連結