feat 專案設計規範
This commit is contained in:
@@ -5,6 +5,16 @@ alwaysApply: true
|
||||
|
||||
# 使用者意圖與導覽(sechskies)
|
||||
|
||||
## 速記(每次動導覽或 `portal-nav.js` 前先對齊)
|
||||
|
||||
1. **`extra/site-guide.html`**:站主自用;該頁頂欄 `data-portal-nav-all-open` → **全部連結可點**;主文 `<main class="site-guide-main">` 的 `<a>` **不准**用腳本改成籌備中。
|
||||
2. **其他每一頁**:訪客面向 → **`COMING_SOON_PAGES` / `INDEX_NAV_OPEN_HASHES` 怎寫就怎鎖**;不准在其他頁加 `all-open`。
|
||||
3. **`totoga2.html`**、**`variety.html`**:站主沒說「對外開放」→ **留在 `COMING_SOON_PAGES`**;不得自以為可以幫忙開放。
|
||||
4. **沒寫在指令裡的開放/連結/從 Set 移除/刪檔或刪導覽列**:**一律先問**,禁止推論;「刪除」未指明範圍(單檔 vs 頂欄整段 vs 資料夾)=必須先問。
|
||||
5. 技術細節與檢查清單:**`portal-nav-rules.mdc`**(與本檔一起讀)。
|
||||
|
||||
---
|
||||
|
||||
## 只做被交代的事
|
||||
|
||||
- **不得**在未被使用者**明確要求**的情況下:把導覽連結從「籌備中/尚無開放」改成可點、更換 `href` 成真實頁面、從 `COMING_SOON_PAGES` 移除、或把錨點加入 `INDEX_NAV_OPEN_HASHES`。
|
||||
@@ -15,10 +25,12 @@ alwaysApply: true
|
||||
- **不得**因為「內容已搬到某頁」就自行推論「導覽也應該開放」——導覽是否開放**只聽使用者口述**。
|
||||
- 若使用者只要求搬內容、刪檔、改站內某段文案,**預設不改** `assets/js/portal-nav.js` 的開放狀態與連結目標。
|
||||
|
||||
## 「傳奇的轉折」導覽(特別記牢)
|
||||
## 「傳奇的轉折」與 `extra/totoga2.html`(特別記牢)
|
||||
|
||||
- 使用者**沒有說要開放**時:導覽上的「傳奇的轉折」必須維持 **尚無開放**(例如維持 `index.html#story` 且 **`#story` 不在 `INDEX_NAV_OPEN_HASHES`**,或等價的籌備中處理)。
|
||||
- **禁止**在未獲使用者同意下,將該項改為連到 `totoga2.html` 或其他已上線頁面。
|
||||
- 頂欄模板裡「傳奇的轉折」連到 **`extra/totoga2.html`**(見 `buildPortalNavInnerHTML`)。
|
||||
- 使用者**沒有明講對外開放整合頁**時:`totoga2.html` **必須**在 **`COMING_SOON_PAGES`** 裡 → 訪客頂欄該項為籌備中、**不可點進**。
|
||||
- **禁止**在未獲同意下:從 Set **移除** `totoga2.html`、或改成連到其他頁並當成已開放。
|
||||
- 首頁錨點另依 **`INDEX_NAV_OPEN_HASHES`**;與「傳奇的轉折/totoga2」分開判斷。
|
||||
|
||||
## 實作前自檢
|
||||
|
||||
@@ -32,3 +44,24 @@ alwaysApply: true
|
||||
(變更哪些檔、可否動共用 CSS:見 **`ai-change-boundaries.mdc`**。)
|
||||
|
||||
全站導覽的**技術細節與檢查清單**:**`portal-nav-rules.mdc`**(與本檔同目錄)。
|
||||
|
||||
---
|
||||
|
||||
## 頁面錨點刪除(`某頁.html#某id`)
|
||||
|
||||
站主若說「刪 `#stage`」「刪 `variety.html#stage`」等,指的是 **該 HTML 裡 `id="…"` 的那一區塊/`<section>`**,不是刪整份檔、不是刪 `variety/` 資料夾、不是刪頂欄一整段「全員發瘋」、也不是擅自改 `COMING_SOON_PAGES` 開放與否(除非原句一併交代)。
|
||||
|
||||
**實作順序(曾做錯順序=站主會火大)**
|
||||
|
||||
1. **先**在目標頁面拿掉對應 DOM(含該 `id` 的區塊)。
|
||||
2. **再**做最小必要連結修正:站內若還有指到已不存在錨點的 `href`,改成仍存在的錨點或去掉 hash;這是避免壞錨點,**不**等於「重構導覽」或「刪頂欄列」。
|
||||
3. **禁止**只改 `portal-nav.js` / `site-guide.html` 卻不刪頁內區塊;也**禁止**把「刪錨點」擴大成刪站主未點名的頂欄項目。
|
||||
|
||||
**和瀏覽器行為對齊(避免說站主幻覺)**
|
||||
|
||||
- 錨點從 HTML 拿掉後,書籤或舊連結上的網址列仍可能顯示 `#…`,**不代表**頁面還有該 `id`。
|
||||
- 頁頂大標(例如 `header` 裡的 `h1`「瘋子與天才」)與下面各區 `id` 區塊是不同層級;不要因為畫面上還看到大標就以為「# 那段還在」。
|
||||
|
||||
**仍模糊時**
|
||||
|
||||
- 「刪除」沒寫清是單一錨點區、整檔、頂欄某一列還是資料夾:用**一句話**確認再改,不要猜;尤其接近深夜、站主已重複指令時。
|
||||
|
||||
Reference in New Issue
Block a user