跳至主要內容
版本:3.5.2

📦 plugin-sitemap

此插件會為您的網站建立網站地圖,以便搜尋引擎爬蟲可以更準確地爬取您的網站。

僅限生產環境

此插件在開發環境中始終處於非活動狀態,並且僅在生產環境中處於活動狀態,因為它作用於建置輸出。

安裝

npm install --save @docusaurus/plugin-sitemap
提示

如果您使用預設值 @docusaurus/preset-classic,則不需要將此插件安裝為依賴項。

您可以透過 預設選項 來設定此插件。

設定

可接受的欄位

名稱類型預設值說明
lastmod'date' | 'datetime' | nullnulldate 為 YYYY-MM-DD。 datetime 為 ISO 8601 日期時間。 null 為停用。請參閱 網站地圖文件
changefreqstring | null'weekly'請參閱 網站地圖文件
prioritynumber | null0.5請參閱 網站地圖文件
ignorePatternsstring[][]glob 模式列表;符合的路由路徑將從網站地圖中過濾掉。請注意,您可能需要在此處包含基本 URL。
filenamestringsitemap.xml建立的網站地圖檔案的路徑,相對於輸出目錄。如果您有兩個外掛實例輸出兩個檔案,這將很有用。
createSitemapItemsCreateSitemapItemsFn | undefinedundefined一個可選函數,可用於轉換和/或過濾網站地圖中的項目。

類型

CreateSitemapItemsFn

type CreateSitemapItemsFn = (params: {
siteConfig: DocusaurusConfig;
routes: RouteConfig[];
defaultCreateSitemapItems: CreateSitemapItemsFn;
}) => Promise<SitemapItem[]>;
資訊

此插件也遵循一些網站設定

  • noIndex:導致不產生網站地圖
  • trailingSlash:決定網站地圖中的 URL 是否有結尾斜線
關於 lastmod

只有當插件提供 路由中繼資料 屬性 sourceFilePath 和/或 lastUpdatedAt 時,lastmod 選項才會輸出網站地圖 <lastmod> 標籤。

所有官方內容插件都為由內容檔案(Markdown、MDX 或 React 頁面組件)支援的路由提供中繼資料,但第三方插件作者可能不提供此資訊,因此插件將無法為其路由輸出 <lastmod> 標籤。

設定範例

您可以透過預設選項或插件選項來設定此插件。

提示

大多數 Docusaurus 使用者透過預設選項來設定此插件。

如果您使用預設值,請透過 預設選項 來設定此插件

docusaurus.config.js
module.exports = {
presets: [
[
'@docusaurus/preset-classic',
{
sitemap: {
lastmod: 'date',
changefreq: 'weekly',
priority: 0.5,
ignorePatterns: ['/tags/**'],
filename: 'sitemap.xml',
createSitemapItems: async (params) => {
const {defaultCreateSitemapItems, ...rest} = params;
const items = await defaultCreateSitemapItems(rest);
return items.filter((item) => !item.url.includes('/page/'));
},
},
},
],
],
};

您可以在 /sitemap.xml 找到您的網站地圖。