静的サイトの問い合わせフォーム GitHub Pages・Cloudflare Pages
公開
GitHub Pages や Cloudflare Pages、レンタルサーバーに HTML のファイルを置くだけの「静的サイト」で、お問い合わせフォームや申込フォームをどう置くか迷っている方に向けた記事です。「html お問い合わせフォーム メール送信」「github pages 問い合わせ フォーム」のように調べると、PHP のプログラムを書いてサーバーに置く方法が多く出てきますが、静的サイトの置き場所では PHP を動かせないことがあります。
この記事では、PHP もサーバーのメールの設定もなしで、LEXORA Forms で作ったフォームを静的サイトに貼る手順を、置き場所ごとの注意と一緒に説明します。サイトに CSP(Content-Security-Policy)を設定している場合に足す設定も、手元で試した結果をもとに書きました。
静的サイトでフォームの送信を受けるには、受け取る先が要る
HTML の<form>は入力欄と送信のボタンを表示するだけで、送られた内容を受け取ってメールにしたり保存したりするのは、送信先のサーバーで動くプログラムです。GitHub Pages は、公式のドキュメントで「HTML、CSS、JavaScript ファイルを」リポジトリから取得して発行する静的サイトのホスティングサービスと説明されています。こうした置き場所には、送信を受け取るプログラムを自分で置けません。
LEXORA Forms のフォームを貼ると、送信を受け取る・保存する・メールで知らせるところまでを LEXORA Forms が受け持ちます。サイトの側に置くのは、表示のための短いコードだけです。
フォームを作って静的サイトに貼る手順
- 1
フォームを作り、通知を設定して公開する
メールアドレスか Google アカウントで登録し、お問い合わせフォームなどのテンプレートから作ります。上部のバーの「通知設定」で、回答が届いたときのメールと自動返信メールをオンにし、「公開する」を押します(新しいフォームは非公開で作られます)。 - 2
「共有」の画面で埋め込みのコードをコピーする
「ホームページに埋め込む」に2つのコードがあります。自分で HTML を書いているなら「高さを自動で合わせる(おすすめ)」を、スクリプトを置けないときは「iframe のみ(スクリプトを貼れない場合)」を使います。 - 3
お問い合わせのページの HTML に貼る
フォームを出したい場所に、コピーしたコードをそのまま貼ります。サイトを作る道具(静的サイトジェネレーター)を使っている場合は、ページのもとになるファイルに貼ります。 - 4
公開し直して、1件送ってみる
置き場所に上げ直したら、公開中のページを開き、フォームが表示されることと、送ったあとにお知らせと自動返信のメールが届くことを確かめます。スマホの幅でも、フォームの下が切れていないかを見ておきます。
「高さを自動で合わせる」のコードは、フォームを表示する枠(iframe)と、枠の高さをフォームの長さに合わせるスクリプトでできています。設問を進めて長さが変わっても、枠の中に二重のスクロールが出ません。「iframe のみ」のコードは高さが固定なので、フォームの下が切れるときは height の値を大きくします。
置き場所ごとの注意
| 置き場所 | 貼るときの注意 |
|---|---|
| レンタルサーバーなどに HTML を置いている | 自分で書いた HTML なら、どちらのコードもそのまま使えます。サーバーで CSP のヘッダーを付けている場合は、下の「CSP を設定しているとき」を見てください |
| GitHub Pages | HTML のファイルにコードを貼れば表示されます。公式のドキュメントでは、使い方の制限(オンラインのビジネスや商取引の促進を主な目的とするサイトの無料のホスティングとして使うことは意図していない、パスワードやクレジットカード番号などの機密情報のやりとりに使うべきではない)が案内されているので、サイトの用途が合っているかを確かめておきます |
| Cloudflare Pages | HTML のファイルにコードを貼れば表示されます。_headers というファイルでレスポンスのヘッダーを足せるので、ここで CSP を設定しているときは、下の設定が要ります。なお、Cloudflare の公式のドキュメントでは、新しいプロジェクトは Workers で始めることが勧められています(Workers の静的なファイルの配信でも、同じ形の _headers を使えます) |
CSP を設定しているとき
サイトの安全のために、CSP(Content-Security-Policy)のヘッダーで「読み込んでよい先」を決めている場合は、LEXORA Forms の住所を許可に足します。足さないと、フォームの枠が空のまま表示されません。手元の検証用のページで試した結果は次のとおりです。
| CSP の設定 | 結果 |
|---|---|
| default-src 'self' だけ | フォームが表示されない |
| frame-src に https://forms.lexora.jp を足す | フォームは表示されるが、枠の高さは固定のまま |
| frame-src と script-src の両方に https://forms.lexora.jp を足す | フォームが表示され、高さも自動で合う |
「iframe のみ」のコードを使うなら、frame-src に足すだけで済みます。コードの中の style の指定(枠線を消す)は、style-src でインラインのスタイルを止めていると効かず、枠に線が出ることがあります。その場合は、サイトの CSS で枠線を消してください。
置いたあとにできること
- 届いた問い合わせを一覧で管理する。回答の一覧で読め、回答ごとに対応状況とメモを付けられます。CSVは Excel 向けの文字コード(Shift_JIS)でも出せます
- いたずらの送信を気にしなくてよい。ボット対策と送信回数の制限が最初から入っています。静的サイトの側で設定することはありません
- 申込の受付にも使える。日程ごとに人数を決める選択肢ごとの定員や、定員と締め切りで自動終了は無料プランでも使えます。セミナーならセミナー・イベント申込フォームから始められます
- どのページから送られたかを残す。名前を「from」にした隠しフィールドを足し、コードの URL の
?embed=1のあとに&from=topのように書き足すと、回答と一緒に記録されます
気をつけたいこと・向かない場面
- サイトとまったく同じ見た目にはなりません。フォームは枠(iframe)の中に表示されます。ボタンの色や角の丸みはデザインで合わせられますが、書体や細かな飾りまでそろえたいときは向きません
- 無料プランでは、埋め込んだフォームにも LEXORA の表示が入ります。消せるのは Light プランからです(LEXORA の表示)
- 回答は LEXORA Forms のサーバーに保存されます。送られた内容を自分の管理する場所だけに置きたい場合は合いません
- お知らせのメールは、LEXORA Forms に登録したメールアドレスに届きます。宛先を複数にはできないので、チームで受けるときは転送するか、Google スプレッドシートへの追記を使います
- 無料プランには上限があります。フォームは5個まで、回答はアカウント全体で月100件までです。ファイルを添付してもらう設問は Light プランです。詳しくは料金プランをご覧ください
相談の受付なら無料相談の申込フォームからも始められます。
GitHub Pages・Cloudflare の内容は2026年10月23日時点の当社調べです(GitHub Docs「GitHub Pages について」「GitHub Pages の制限事項」、Cloudflare Docs「Cloudflare Pages」「Headers(Pages)」「Headers(Workers の Static Assets)」による)。
この記事で使えるテンプレート
中身を見て、そのまま自分のフォームとして作れます(無料)。
- このテンプレートで作る
ビジネス
お問い合わせフォーム
ホームページに置くお問い合わせフォームのテンプレートです。問い合わせの種類で内容を分けて受け付けられ、個人事業主・店舗・中小企業でそのまま使えます。
設問 9中身を見る - このテンプレートで作る
イベント・セミナー
セミナー・イベント申込フォーム
セミナー・勉強会・説明会・イベントの参加申込フォームのテンプレートです。参加者の情報と参加方法(会場・オンライン)をまとめて受け付けられます。
設問 9中身を見る - このテンプレートで作る
ビジネス
無料相談の申込フォーム
士業・コンサルタント・コーチ・制作会社の初回無料相談の申込を受け付けるテンプレートです。相談の内容・希望の方法・日時の候補を最初からそろえて受け取れます。
設問 13中身を見る
この記事に出てきた機能
- URL で共有・サイトに埋め込むURL を配るだけ。自社サイトにはコードを貼るだけで埋め込めます。
- 回答者への自動返信メール一部 Light受付の控えを回答者へ。返信はあなたに届きます。文面の編集と「〇〇様」の差し込みは Light。
- 新しい回答のお知らせ回答が届くたびに、回答の内容をあなたのメールへ。
- 回答の一覧パソコンでは表、スマホではカードで。新しい順に並びます。
- 対応状況とメモ「未対応・対応中・完了」など、回答ごとに状況を付けて件数で追えます。メモはあなただけが読めます。キャンセルにすると定員の枠が空きます。
- CSV のダウンロードExcel でそのまま開ける形(Shift_JIS)と UTF-8 から選べます。対応状況とメモの列も付きます。
- いたずら送信を自動でブロックボット対策と送信回数の制限を最初から。設定は要りません。
- 選択肢ごとの定員日程や回ごとに人数を決めると、定員に達した選択肢は「満席」になり選べなくなります。無料プランでも使えます。
- 定員と締め切りで自動終了先着◯名、◯月◯日まで。受付が終わったら案内の文章に切り替わります。無料プランでも使えます。
- 隠しフィールドURL に付けた値(流入元など)を、回答と一緒に記録します。
- 色・フォント・角の丸みボタンの文字の色は、読みやすいほうを自動で選びます。
- LEXORA のバッジを消すLightフォーム・自動返信メール・集計のグラフの画像から LEXORA の表示を外せます。


