如何建立、編輯、移動或刪除頁面
建立頁面
MDN Web Docs 上的所有頁面均以 Markdown 格式撰寫。內容存放於名為 index.md
的檔案中,該檔案位於其專屬的目錄中。目錄名稱代表頁面的名稱。例如,如果 align-content
是一個新的 CSS 屬性,且你想為其建立一個新的參考頁面,你需要在 en-us/web/css
中建立一個名為 align-content
的資料夾,並在其中建立一個名為 index.md
的檔案。
備註: 目錄名稱與頁面 slug 略有不同。最明顯的是,slug 遵循句子大小寫格式。
有許多不同的頁面類型,它們具有特定的結構和支援的頁面範本,你可以複製這些範本來開始撰寫。
文件的 index.md
檔案必須以前置內容開頭,定義 title
、slug
和 page-type
。所有這些前置內容資訊都可以在上述的頁面範本中找到。此外,你也可以查閱類似文件中的 index.md
,並參考其前置內容,這可能會對你有所幫助。
建立頁面的基本步驟如下:
-
建立一個全新、最新的分支進行工作。
bashcd ~/repos/mdn/content git checkout main git pull mdn main # 再次執行 "yarn" 以確保你已安裝最新的 Yari 相依性。 yarn git checkout -b my-add
-
建立一個或多個新的文件資料夾,每個資料夾內都有自己的
index.md
檔案。 -
新增並提交你的新檔案,然後將你的新分支推送到你的 fork。
bashgit add files/en-us/folder/you/created git commit -m "適當描述你的更改" git push -u origin my-add
-
建立你的拉取請求。
移動頁面
移動一個或多個文件或整個文件樹非常簡單,因為我們已經創建了一個特殊的指令來幫助你處理細節:
yarn content move <from-slug> <to-slug> [locale]
你只需指定你想移動的現有文件的 slug(例如 Web/HTTP/Guides/Authentication
),以及其新位置的 slug(例如 Web/HTTP/Guides/Auth
),也可以選擇性地加上現有文件的語言(預設為 en-US
)。
如果你想移動的現有文件有子文件(即它代表一個文件樹),yarn content move
指令將移動整個文件樹。
例如,假設你想將整個 /en-US/Web/HTTP/Guides/Authentication
文件樹移動到 /en-US/Web/HTTP/Guides/Auth
,你需要執行以下步驟:
-
建立一個全新的分支進行工作。
bashcd ~/repos/mdn/content git checkout main git pull mdn main # 再次執行 "yarn" 以確保你已安裝最新的 Yari 相依性。 yarn git checkout -b my-move
-
執行移動操作(這將刪除和修改現有檔案,並建立新檔案)。
bashyarn content move Web/HTTP/Guides/Authentication Web/HTTP/Guides/Auth
-
移動檔案後,我們需要更新其他內容檔案中對這些檔案的引用。使用以下指令一次性自動更新所有引用:
bashnode scripts/update-moved-file-links.js
-
新增並提交所有刪除、建立和修改的檔案,然後將你的分支推送到你的 fork。
bashgit add . git commit -m "將 Web/HTTP/Guides/Authentication 移動到 Web/HTTP/Guides/Auth" git push -u origin my-move
-
建立你的拉取請求。
備註: yarn content move
指令會在 _redirects.txt
檔案中新增必要的重新導向,讓舊位置會重新導向到新位置。請勿手動編輯 _redirects.txt
檔案!這樣很容易產生錯誤。如果需要新增重新導向但不移動檔案,請在 MDN Web Docs 溝通管道中與 MDN Web Docs 團隊討論。
刪除頁面
只有在特殊情況下,文件才應從 MDN Web Docs 中移除。如果你正在考慮刪除頁面,請先在 MDN Web Docs 聊天室中與 MDN Web Docs 團隊討論。
刪除一個或多個文件或整個文件樹非常簡單,就像移動頁面一樣,因為我們已經創建了一個特殊的指令來幫助你處理細節:
yarn content delete <document-slug> [locale]
備註:
你需要使用 yarn content delete
指令來刪除 MDN Web Docs 中的頁面。請勿僅從 repo 中刪除其目錄。yarn content delete
指令還會處理其他必要的更改,例如更新 _wikihistory.json
檔案。
你只需指定你想刪除的現有文件的 slug(例如 Web/HTTP/Guides/Authentication
),也可以選擇性地加上現有文件的語言(預設為 en-US
)。
如果你想刪除的現有文件有子文件(即它代表一個文件樹),你必須同時指定 -r, --recursive
選項,否則指令將失敗。
例如,如果你想刪除整個 /en-US/Web/HTTP/Guides/Authentication
文件樹,你需要執行以下步驟:
-
建立一個全新的分支進行工作。
bashcd ~/repos/mdn/content git checkout main git pull mdn main # 再次執行 "yarn" 以確保你已安裝最新的 Yari 相依性。 yarn git checkout -b my-delete
-
執行刪除操作。
bashyarn content delete Web/HTTP/Guides/Authentication --recursive
-
新增重新導向。目標頁面可以是外部 URL 或 MDN Web Docs 上的另一個頁面。
bashyarn content add-redirect /en-US/path/of/deleted/page /en-US/path/of/target/page
-
新增並提交所有刪除的檔案,然後將你的分支推送到你的 fork。
bashgit commit -a git push -u origin my-delete
-
建立你的拉取請求。
備註: 如果你想刪除的頁面 slug 包含特殊字元,請將其包含在引號中,例如:
yarn content delete "Mozilla/Add-ons/WebExtensions/Debugging_(before_Firefox_50)"
從 MDN Web Docs 中移除內容不可避免地會導致更新現有內容。由於許多文章會連結到其他文章,移除的內容可能會在其他地方被引用。新增重新導向將減輕移除內容的影響;然而,最佳做法是編輯內容以反映更改,並將內容編輯與移除的拉取請求一起提交。
編輯現有頁面
要編輯頁面,你需要在我們的內容倉儲中找到頁面原始碼。找到它的最簡單方法是前往你想編輯的頁面,移動到頁面底部,然後點擊「View this page on GitHub」連結。
預覽更改
如果你在本地編輯頁面並想查看更改的效果,可以進入內容倉儲資料夾,執行 CLI 指令 yarn start
,然後在瀏覽器中打開 localhost:5042
,前往頁面並查看它。在搜尋框中輸入標題可以輕鬆找到它。預覽的頁面會隨著你編輯原始碼而在瀏覽器中更新。
附加檔案
若要將檔案附加到文章中,只要將檔案放在與文章的 index.md
檔案相同的目錄。通常透過 <a>
元素將檔案加入頁面中。