第1回 WordPressを使わずAstroとCloudflare Workersでサイトを作ることにした
Webサイトの自作にあたり、最初の検討対象はWordPress。
情報量が多く、レンタルサーバーへの導入も簡単。ただし、今回考えているのは記事を手入力するだけのブログではない。最終的に実現したい流れは以下のとおり。
- 検索キーワードを自動収集
- 候補をメールなどで受信
- 採用するキーワードを自分で選択
- AIによる記事の下書き生成
- 内容を確認してから公開
この条件から、管理画面中心のWordPressではなく、記事をファイルとして管理できるAstroを選択。
Astroを選択した理由
Astroは、ブログやドキュメントのようなコンテンツ中心のサイトに向いたフレームワーク。記事をMarkdownで保存し、ビルド時にHTMLを生成できる。
通常の記事は静的HTMLとして配信し、必要な部分だけJavaScriptを使用。将来Google AdSenseを導入する場合も、広告用JavaScriptの読み込みに対応できる。
記事ファイルはGitHubで管理。変更履歴の確認、以前の状態への復元、別サーバーへの移行にも利用できる構成になる。
Astro公式のブログテンプレートには、Markdown・MDX、サイトマップ、RSS、OGPなどの基本機能も用意されている。
公開基盤はCloudflare Workers
公開先にはCloudflare Workersを選択。
静的サイトの公開先としてCloudflare Pagesも候補に含めた。ただし、現在はWorkersでもStatic AssetsとしてHTMLやCSSを配信できる。今後、キーワード収集、メール通知、AI API連携などを追加しやすい点も判断材料の一つ。
初期構成は動的処理なし。Astroで生成したHTML、CSS、画像をWorkers Static Assetsから配信するだけのシンプルな形に設定。
最初に必要なアカウント
初回公開で必要なアカウントは、実質的に次の2つ。
| アカウント | 用途 | 初期費用 |
|---|---|---|
| GitHub | ソースコード、記事、変更履歴の保存 | 無料 |
| Cloudflare | Workersへのデプロイとサイト公開 | 無料 |
独自ドメインの購入は保留。まずはCloudflareから発行されるworkers.devのURLで動作確認を行い、サイトの方向性が決まった段階で取得する方針を採用。
以下のサービスも初期段階では登録を見送り。
- Google Search Console
- Google Analytics
- Google AdSense
- AI API
- メール配信サービス
先に確認するのは、サイトの作成、記事の追加、GitHubへの保存、Cloudflareへの公開という基本経路。
今回のプロジェクト
プロジェクト名はyumaru-site。
Cloudflare Workersから発行された公開URLはこちら。
https://yumaru-site.yumaru.workers.dev
次回は、Windows上でAstro公式ブログテンプレートを作成。ローカル表示と本番ビルドまで進める。