From e7b60d5ef8c8cf5471a62498fd0a88f61cd2812e Mon Sep 17 00:00:00 2001 From: Yasutake Yohei <61961825+yasutakeyohei@users.noreply.github.com> Date: Thu, 5 Nov 2026 14:58:06 +0900 Subject: events: メインは前月以降、アーカイブは前々月以前に分ける MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit メインページの一覧とカレンダーを前月以降に広げ、前々月以前の月だけを アーカイブとして生成するようにした。該当が無いときはアーカイブ欄に その旨を表示する。月が進めば自動でページが増える。 RSSと旧URLの転送先も、存在しない月ページを指さないよう合わせた。 --- src/components/ScheduleMonthLinks.astro | 62 ++++++++++++++++++++------------- 1 file changed, 37 insertions(+), 25 deletions(-) (limited to 'src/components/ScheduleMonthLinks.astro') diff --git a/src/components/ScheduleMonthLinks.astro b/src/components/ScheduleMonthLinks.astro index adf3b32..61f1ae1 100644 --- a/src/components/ScheduleMonthLinks.astro +++ b/src/components/ScheduleMonthLinks.astro @@ -1,40 +1,52 @@ --- // 月別・年度別アーカイブのリンク一覧。行事予定ページの下部に置く。 +// アーカイブは前々月以前の月だけ(前月以降はメインページに掲載している)。 import { - fiscalYearKeys, + archiveFiscalYearKeys, + archiveMonthKeys, fiscalYearLabel, fiscalYearOf, monthCounts, - monthKeys, monthLabel, } from '@/lib/schedule-months'; import { scheduleUrl } from '@/data/schedule/config'; -const groups = fiscalYearKeys.map((fy) => ({ +const groups = [...new Set(archiveMonthKeys.map((month) => fiscalYearOf(month)))].map((fy) => ({ key: fy, label: fiscalYearLabel(fy), - months: monthKeys.filter((month) => fiscalYearOf(month) === fy), + hasPage: archiveFiscalYearKeys.includes(fy), + months: archiveMonthKeys.filter((month) => fiscalYearOf(month) === fy), })); --- -
+ 前々月より前に終了した予定はまだありません。月が進むと、ここに過去の予定が表示されます。 +
+ ) : ( +