diff --git a/CLAUDE.md b/CLAUDE.md index f67d87b..d22503e 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -43,7 +43,7 @@ | 檔案 | 頁面標題 | 說明 | |------|----------|------| -| `vedio/bangxiao.html` | 世紀級寶藏 / 爆笑養老院 | 甜蜜負擔計量器;六人卡片選取 + jQuery 計算;CTA → `totoga2/ebook.html` | +| `vedio/bangxiao.html` | 世紀級寶藏 / 爆笑養老院 | 甜蜜負擔計量器;六人卡片選取 + jQuery 計算;CTA → `vedio/variety-shows.html` | | `vedio/variety-shows.html` | 全員發瘋 | 綜藝節目存檔表;tabs + 搜尋;已對齊 albums.html 扁平結構 | | `vedio/NJTW/NJTW5.html` | 新西遊記5 | 各自暴走專頁 | | `vedio/vedio-list.html` | 影視清單 | 追劇進度預覽頁(乙級第三題骨架,PHP 後台在 `vedio/vedio-list/`) | @@ -67,27 +67,35 @@ 5. **commit 前網站不會更新**。本地端強制重整用 `Ctrl+Shift+R`;GitHub Pages 需 `git push` 後等約 1 分鐘。 +6. **頂層 `
  • ` 固定 5 個,沒有例外**(淪陷瞬間、完整的六顆、現場的震撼、黃色留聲機、Yellow Note)。「水晶練習室」籌備中佔位也收進「Yellow Note」子選單,不再獨立於頂層。新頁面/佔位一律收進其中一項的子選單,不要自己開新的頂層項目。詳見 `developer-rules/rules/portal-nav-rules.md` §8。 + --- ## 目前工作狀態 -**最後更新:** 2026-08-13 +**最後更新:** 2026-08-18 **進行中:** -- 無 +- `calendar2026.html` 的 `

    ` 標題「水晶萬年曆」還在想更好的名字(要求:不用「水晶」前綴、不重複站上已用意象詞、要有典故/查證過的出處),已否決多輪提案,暫緩 **待確認:** - developer-rules 健檢尚未執行 **已完成:** +- `yellow-note/minister.html`(視覺進化論)Journey 時間軸重構:3 個大 `
    ` 拆成每個月獨立一個 `story-node`(`data-era="2016.07"` 格式),套用 `.merged-storyline` 既有奇偶交錯排版,不再手寫「07 月|」字樣。真實照片只有 `2018.07`「415 天健身挑戰」(`fitness-calendar.png`,7/13 李宰鎮生日發起的每日健身計畫,年份待查證);其餘節點 `data-photo-pending="true"`、不渲染 `
    `,等後台控制方式定案後再補真照片 +- `yellow-note/minister.html` 與 `calendar2026.html` 內文提到「水晶廢人字幕組」處都連到頻道(`youtube.com/channel/UCJnhlm_t9C7BmcILcjHDk_w`),minister.html 用 `.story-external-inline` 外部連結樣式 +- `yellow-note/practice-room.html`(水晶練習室)練舞清單接上第一支影片(SECHSKIES 回歸編舞練習),新增 `yellow-note/dance-practices-data.php` 靜態資料端點頂著(完整 MySQL 後台版在獨立專案 `sechskies_fans`,未部署) +- portal-nav 全開檢查用的 `TEMP_OPEN_ALL_FOR_REVIEW` 已還原為 `false`;`minister.html` 正式從 `COMING_SOON_PAGES` 移除(今天做完,永久開放),「水晶練習室」改為永久真連結(今天做完),「隊長的氣場」維持籌備中(今天沒動它,回到原狀) - 建立 CLAUDE.md 跨裝置上下文檔案 - 新增 `vedio/bangxiao.html`(世紀級寶藏 / 爆笑養老院,甜蜜負擔計量器) - `vedio/variety-shows.html` 重構:移除多層包裝,對齊 albums.html 扁平結構 - portal-nav 新增世紀級寶藏,正確放入淪陷瞬間子選單 - `extra/site-guide.html` 同步更新:全員發瘋 → 世紀級寶藏 - `variety/` 資料夾整個改名為 `vedio/`,同步修正 portal-nav.js、site-guide.html、style.css 註解、docs/site-structure.md、portal-nav-rules.md 等連結 +- `calendar2026.html` 新增「粉絲應援 / 字幕作品」(`fanwork`) 分類,收錄「水晶廢人字幕組」頻道全部 8 支影片+ MTV 我愛偶像報導影片(4/4,重啟活動20週年),依上架日期分布;`assets/css/calendar.css` 新增對應淺金配色(比生日金淺、hover 提亮) +- 修正 portal-nav.js 兩次頂層項目迴歸:「世紀級寶藏」移回「淪陷瞬間」子選單、「水晶練習室」移入「Yellow Note」子選單;`portal-nav-rules.md` 新增 §8 頂層 5 主項上限規則(無例外),`extra/site-guide.html` 心智圖同步 --- diff --git a/assets/css/calendar.css b/assets/css/calendar.css index 0d8dfbe..a83dd05 100644 --- a/assets/css/calendar.css +++ b/assets/css/calendar.css @@ -8,6 +8,9 @@ --cal-border-soft: rgba(255, 204, 0, 0.18); --cal-border-strong: rgba(255, 204, 0, 0.28); --cal-panel-shadow: 0 14px 34px rgba(0, 0, 0, 0.2); + /* 粉絲應援/字幕作品:比生日金淺一階,hover 時提亮 */ + --cal-fanwork-color: #ffe066; + --cal-fanwork-color-hover: #fff4b8; } .calendar-page-container { @@ -245,6 +248,15 @@ background: var(--color-brand); } +.event-dot.fanwork { + background: var(--cal-fanwork-color); + transition: background-color 0.18s ease; +} + +.day-cell:hover .event-dot.fanwork { + background: var(--cal-fanwork-color-hover); +} + /* 生日頭像縮圖小標籤 */ .day-avatar-badge { width: 38px; @@ -331,6 +343,43 @@ border-left-color: var(--color-brand); } +.event-card.type-fanwork { + border-left-color: var(--cal-fanwork-color); +} + +.event-card.type-fanwork:hover { + border-left-color: var(--cal-fanwork-color-hover); + box-shadow: 0 0 14px rgba(255, 224, 102, 0.4); +} + +.event-desc a, +.modal-desc a { + color: var(--color-brand-dark); + text-decoration: underline; + text-decoration-color: rgba(255, 204, 0, 0.5); +} + +.event-desc a:hover, +.modal-desc a:hover { + color: #cc0000; +} + +.event-video-link { + display: inline-flex; + align-items: center; + gap: 6px; + margin-top: 8px; + font-size: 0.86rem; + font-weight: 700; + color: var(--color-brand-dark); + text-decoration: none; + transition: color 0.18s ease; +} + +.event-video-link:hover { + color: #cc0000; +} + .event-card-header { display: flex; align-items: center; diff --git a/assets/css/style.css b/assets/css/style.css index d3f64e0..d76af05 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -4158,17 +4158,6 @@ body.minister-page .minister-journey .sub-title { color: #b0b0b0; } -body.minister-page .merged-storyline .story-node p.minister-month { - font-weight: 800; - color: #8a6910; - margin: 1rem 0 0.4rem; - letter-spacing: 0.02em; -} - -body.minister-page .merged-storyline .story-node h3+p.minister-month { - margin-top: 0.35rem; -} - body.minister-page .minister-photo { margin: 0.6rem 0 0; } @@ -4184,19 +4173,5 @@ body.minister-page .minister-photo img { box-shadow: 0 10px 26px rgba(0, 0, 0, 0.1); } -body.minister-page .minister-photo--dual { - display: grid; - gap: 14px; - grid-template-columns: 1fr 1fr; - max-width: 720px; - margin-left: auto; - margin-right: auto; -} - -body.minister-page .minister-photo--dual img { - max-width: none; - width: 100%; -} - body.minister-page .minister-back { text- \ No newline at end of file diff --git a/assets/images/minister/fitness-calendar.png b/assets/images/minister/fitness-calendar.png new file mode 100644 index 0000000..c0b5f07 Binary files /dev/null and b/assets/images/minister/fitness-calendar.png differ diff --git a/assets/js/portal-nav.js b/assets/js/portal-nav.js index a17efab..95e960c 100644 --- a/assets/js/portal-nav.js +++ b/assets/js/portal-nav.js @@ -59,11 +59,17 @@ link.setAttribute("title", p); } + /** + * 站主曾暫時要求「全部開放檢查」,現已檢查完畢還原為 false。 + * true 時會繞過所有籌備中判斷(COMING_SOON_PAGES/INDEX_NAV_OPEN_HASHES/ + * 頂欄「隊長的氣場」stub);不要刪掉下面原本的名單。 + */ + const TEMP_OPEN_ALL_FOR_REVIEW = false; + const COMING_SOON_PAGES = new Set([ "albums.html", "map.html", "member.html", - "minister.html", "minister_ge.html", "readable.html", "timeline.html", @@ -120,6 +126,7 @@ } function linkShouldBeComingSoon(href, pageKey, pageKeysSoon) { + if (TEMP_OPEN_ALL_FOR_REVIEW) return false; if (pageKeysSoon.has(pageKey)) { return true; } @@ -234,7 +241,8 @@ } /** 全站導覽 HTML — `rp` 為站根相對前綴;僅修改此模板即可同步所有頁面 - * 七主項:淪陷瞬間、完整的六顆、現場的震撼、黃色留聲機、世紀級寶藏、Yellow Note、水晶練習室(外站 sechskies_fans,籌備中)。 */ + * 五主項固定:淪陷瞬間、完整的六顆、現場的震撼、黃色留聲機、Yellow Note,不得再開第 6 個頂層項目。 + * 世紀級寶藏收在「淪陷瞬間」子選單內;水晶練習室收在「Yellow Note」子選單內(見 site-guide.html 心智圖)。 */ function buildPortalNavInnerHTML(rp) { return ` @@ -257,9 +265,9 @@
  • 影片
  • +
  • 世紀級寶藏
  • -
  • 世紀級寶藏
  • 完整的六顆
  • 現場的震撼
  • -
  • Yellow Note +
  • Yellow Note
  • -
  • 水晶練習室
  • `.trim(); } diff --git a/calendar2026.html b/calendar2026.html index c163103..9ddbcfc 100644 --- a/calendar2026.html +++ b/calendar2026.html @@ -16,7 +16,7 @@

    水晶萬年曆

    - 2026 SECHSKIES SPECIAL CALENDAR + SECHSKIES SPECIAL CALENDAR
    @@ -62,6 +62,7 @@ + @@ -73,12 +74,12 @@
    -
    -
    -
    -
    -
    -
    +
    +
    +
    +
    +
    +
    @@ -126,6 +127,10 @@ // 水晶男孩專屬紀念日數據集 (含成員介紹頁連結錨點) const sechskiesEvents = [ // 1月 + { + month: 1, day: 8, type: 'fanwork', title: '世界真美味:西澳洲篇 🎬', + desc: '水晶廢人字幕組翻譯之旅遊節目 E01,金在德與H.O.T. Tony共同主持', videoUrl: 'https://www.youtube.com/watch?v=HJ9MYlt8qPQ' + }, { month: 1, day: 21, endDay: 22, type: 'concert', title: 'Yellow Note Final 首爾演唱會 🎤', photo: 'assets/images/concert/2017.jpg', desc: '2017 年首爾終場演唱會紀念' @@ -142,6 +147,10 @@ }, { month: 3, day: 23, type: 'debut', title: 'J-Walk 組合出道日 🌟', desc: '2002.03.23 金在德與張水院發行首張專輯《Suddenly》' }, // 4月 + { + month: 4, day: 4, type: 'fanwork', title: 'MTV 報導:水晶男孩重啟活動 🎬', + desc: 'MTV 我愛偶像 Idols of Asia 報導,水晶男孩出道20年重啟團體活動、創下多項紀錄', videoUrl: 'https://www.youtube.com/watch?v=Qict851iwmw' + }, { month: 4, day: 14, type: 'concert', title: '六六歌2 上岩黃海重逢日 🌟', photo: 'assets/images/totoga2/toto1.png', desc: '2016.04.14 無限挑戰六六歌2 上岩游擊演唱會16年後重逢' @@ -150,6 +159,10 @@ // 5月 { month: 5, day: 18, type: 'debut', title: '水晶男孩告別宣佈日', desc: '2000.05.18 告別紀念' }, { month: 5, day: 24, type: 'debut', title: '姜成勳 Solo 出道日 🌟', desc: '2001.05.24 首張專輯《In Connection》' }, + { + month: 5, day: 27, type: 'fanwork', title: '日本見面會宣傳片 🎬', + desc: '水晶廢人字幕組製作,水晶男孩日本見面會活動宣傳影片', videoUrl: 'https://www.youtube.com/watch?v=2YAAbTG9Pi8' + }, // 6月 { month: 6, day: 8, type: 'birthday', title: '殷志源 生日 🎂', memberName: '殷志源', enName: 'EUN JI WON', role: 'Leader · Rap · Dance', @@ -168,11 +181,35 @@ month: 7, day: 16, type: 'birthday', title: '張水院 生日 🎂', memberName: '張水院', enName: 'JANG SU WON', role: 'Vocal', photo: 'assets/images/member/seven7lai_1___BuRBxcPAIsP___.jpg', desc: '1980.07.16 張水院生日', memberUrl: 'member/member.html#poster-jsw' }, + { + month: 7, day: 20, type: 'fanwork', title: 'BE WELL 日文版中字 🎬', + desc: '水晶廢人字幕組製作,慶賀水晶男孩日本正式出道,繁中字幕版', videoUrl: 'https://www.youtube.com/watch?v=dTlTQ_qt3S8' + }, + { + month: 7, day: 20, type: 'fanwork', title: 'THREE WORD 日文版中字 🎬', + desc: '水晶廢人字幕組製作,慶賀水晶男孩日本正式出道,繁中字幕版', videoUrl: 'https://www.youtube.com/watch?v=vDl0xee2Xrw' + }, + { + month: 7, day: 24, type: 'fanwork', title: 'SAD SONG 日文版中字 🎬', + desc: '水晶廢人字幕組製作,慶賀水晶男孩日本正式出道,繁中字幕版', videoUrl: 'https://www.youtube.com/watch?v=-J8AUewz1OI' + }, // 8月 + { + month: 8, day: 6, type: 'fanwork', title: '在德生日祝福影片 🎬', + desc: 'PTT水晶男孩板召集台灣香港粉絲共同製作,賀 8/7 金在德生日,已登上 J-walk 官咖首頁', videoUrl: 'https://www.youtube.com/watch?v=pBeJC4ol-ts' + }, { month: 8, day: 7, type: 'birthday', title: '金在德 生日 🎂', memberName: '金在德', enName: 'KIM JAE DUC', role: 'Rap · Dance', photo: 'assets/images/member/4c0e013b341e85622979475bc230719b.jpg', desc: '1979.08.07 天使笑顏與舞蹈機器金在德生日', memberUrl: 'member/member.html#poster-kjd' }, + { + month: 8, day: 26, type: 'fanwork', title: '世界真美味:新喀里多尼亞篇 🎬', + desc: '水晶廢人字幕組翻譯之旅遊節目 E05,金在德與H.O.T. Tony共同主持', videoUrl: 'https://www.youtube.com/watch?v=Mhxxh42zZu4' + }, + { + month: 8, day: 30, type: 'fanwork', title: '台灣小黃演唱會應援影片 🎬', + desc: 'PTT水晶男孩板召集台灣小黃共同製作,為 16 年後重返舞台演唱會應援打氣', videoUrl: 'https://www.youtube.com/watch?v=pvsa7PjsfwA' + }, // 9月 { month: 9, day: 10, endDay: 11, type: 'concert', title: 'Yellow Note 演唱會 (二安日) 🎤', @@ -217,7 +254,7 @@ const modalBody = document.getElementById('modal-body-content'); function cleanEventTitle(title) { - return String(title || '').replace(/[🎂🌟🎤]/g, '').trim(); + return String(title || '').replace(/[🎂🌟🎤🎬]/g, '').trim(); } // 初始化 @@ -402,7 +439,7 @@ `; eventsList.appendChild(concertCard); } else { - // 一般事件卡片 + // 一般事件卡片(含粉絲應援/字幕作品) const dateStr = ev.endDay ? `${ev.month}/${ev.day} ~ ${ev.month}/${ev.endDay}` : `${ev.month}/${ev.day}`; const card = document.createElement('div'); card.className = `event-card type-${ev.type}`; @@ -412,6 +449,7 @@
    ${cleanEventTitle(ev.title)}
    ${ev.desc}
    + ${ev.videoUrl ? ` 觀看影片` : ''} `; eventsList.appendChild(card); } @@ -444,6 +482,7 @@ `; } @@ -457,4 +496,4 @@ - + \ No newline at end of file diff --git a/developer-rules/rules/portal-nav-rules.md b/developer-rules/rules/portal-nav-rules.md index d9e501c..66961cf 100644 --- a/developer-rules/rules/portal-nav-rules.md +++ b/developer-rules/rules/portal-nav-rules.md @@ -127,6 +127,14 @@ alwaysApply: true 錨點拿掉後,書籤網址列仍可能顯示 `#…`,不代表 DOM 還在。header 大標 ≠ 已刪的 `#id` 區塊。「刪除」範圍不清 → **先問**。 +## 8. 頂欄主項上限(5 項,無例外) + +**頂欄 ` +
  • + 水晶練習室 +
  • -
  • - 水晶練習室(籌備中,外部連結待 sechskies_fans 部署完成後補上) -
  • 站內其他頁面(草稿/作業/備查,不在頂欄)