ブログ > 制作の裏側

更新作業ゼロで「毎日更新される店のサイト」を作る — 釣り船サイトの裏側

2026.07.08

制作サンプル「海栄丸」(釣り船サイト)の技術解説です。

🎣 実物はこちら → 釣り船サイト「海栄丸」デモ(釣果チャートとブログが自動更新されています)

「サイトの更新、続かない問題」

店舗サイトが古びる最大の原因は、デザインではなく更新が止まることです。釣り船なら釣果、飲食なら本日のメニュー——毎日変わる情報を毎日手入力できる店主はほとんどいません。

そこでこのデモでは、店側の作業をゼロにしたまま、サイトだけが毎日更新されていく構成を組みました。

仕組み: 書く人と読む人を完全に分ける

釣果ブログ(既存の情報源)
   ↓ スクレイパーが毎日自動収集(Admin SDKで書き込み)
Cloud Firestore(posts / catches / daily_summaries)
   ↓ サイトは読み取り専用で購読
静的サイト(ビルドなし・1ファイルHTML)

ポイントは、サイト側に書き込み機能を一切持たせないことです。セキュリティルールで全コレクションを read-only にしているため、管理画面も認証も不要になり、作るものが劇的に減ります。

// firestore.rules — クライアントは読むだけ
match /daily_summaries/{id} {
  allow read: if true;
  allow write: if false;  // 書けるのは収集バッチだけ
}

フロントは素のHTML1枚

ページはフレームワークなしの1ファイル。CDNのFirebase SDKで直近7日分を引いて、CSSだけの棒グラフに流し込んでいます。

const snap = await db.collection('daily_summaries')
  .orderBy('date', 'desc').limit(7).get();
// → 「日別のタチウオ最大本数」チャートに描画

ビルドもサーバーもないので、ホスティング費用はほぼゼロ。それでも訪問者から見れば「毎日更新される元気な店」です。

この構成が効く業種

「情報はどこかにあるのに、サイトに反映されない」——それは人が運ぶ設計になっているからです。運ぶのは機械に任せましょう。

自動更新の仕組み、あなたの店にも。

「うちの場合はどこからデータを取れる?」という段階からご相談いただけます。

相談してみる →