ブログ記事
- Next.js
- posts.ts
- sitemap
- ブログ運用
- 1分Tips
posts.tsに1エントリ追加するだけでsitemapとブログ一覧に自動反映される
"toolarc-webでは posts.ts に1エントリ追加するだけで /blog/{slug}・ブログ一覧・sitemap.xml に自動反映されます。最小公開パスの手順を実測ベースで解説します。"
今日の結論
lib/blog/posts.tsに1エントリ追加するだけで/blog/{slug}・/blog一覧・/sitemap.xmlの3か所に自動反映されるapp/blog/[slug]/page.tsx・app/sitemap.ts・app/blog/page.tsxを個別に編集する必要は通常ない- 最小公開パスは Markdown + posts.ts の2ファイルで完結する
- Series UI に載せる場合のみ
lib/series/series.tsの更新が追加で必要
なぜ posts.ts 1ファイルで完結するのか
toolarc-web では、ブログ記事のルーティング・一覧生成・サイトマップ生成がすべて lib/blog/posts.ts の内容を参照する設計になっています。
つまり、記事を追加するたびに複数のファイルを探して編集する必要はありません。エントリを1行追加すれば、Next.js のビルド時に関連ページがまとめて生成されます。
最小公開パス(2ファイル)
記事を公開するために必要なファイルはこの2つだけです。
| 対象ファイル | 作業内容 |
|---|---|
content/blog/{contentId}/{markdownFile} | 記事本文の Markdown を配置する |
lib/blog/posts.ts | slug・contentId・markdownFile・publishedAt などを1エントリ追加する |
Series UI(シリーズナビゲーション)に載せたい場合は、追加で lib/series/series.ts の更新が必要です。ただしこれは任意であり、通常の1分Tips記事では不要です。
手順
content/blog/{contentId}/{markdownFile}に記事の Markdown ファイルを配置するlib/blog/posts.tsに以下の情報を含むエントリを1件追加するslug(公開 URL のパス)contentId(新規1分Tipsは"20-investigate-something")markdownFile(配置したファイル名)publishedAt(公開日)
npm run buildを実行して成功を確認する/blog/{slug}が HTTP 200 で返ること、/sitemap.xmlに slug が含まれることを確認する
npm run build
ビルドが成功すれば、/blog(一覧)・/blog/{slug}(記事ページ)・/sitemap.xml の3か所への反映は自動です。
確認ポイント(ビルド後)
| 確認項目 | 手順 |
|---|---|
| 記事ページ | /blog/{slug} にアクセスして HTTP 200 を確認 |
| ブログ一覧 | /blog に新しい記事が表示されているか確認 |
| sitemap.xml | /sitemap.xml を開いて slug が含まれているか確認 |
OG画像の fallback 確認も忘れずに行うと安心です。
まとめ
posts.ts への1エントリ追加で、記事ページ・一覧・サイトマップがまとめて自動生成されます。ルーティングや sitemap の設定ファイルを個別に触る必要がないため、記事公開の手順はシンプルに保てます。
Series UI が必要なときだけ series.ts を追加更新する、という切り分けを覚えておくと運用がスムーズです。
関連記事
- 公開後に既存記事へ相互リンクを逆更新する手順(211↔215型)
- npm run build後にHTTP200・sitemap.xml・OG fallbackを確認する
- series.tsにspokeを追加してシリーズページを更新する方法
関連記事(準備中)
- Next.js運用 Hub(準備中)
- posts.ts 登録の最小チェックリスト(準備中)
本記事の内容は 2026-06-07 執筆時点の toolarc-web の実装に基づきます。Next.js のバージョンアップや構成変更により、動作が変わる場合があります。重要な判断は公式ドキュメントおよびリポジトリの実コードでご確認ください。