2026年8月27日
2026年8月27日
WordPressで予約サイトを作る方法|予約プラグインの選び方と公開前の設定
飲食店・美容院・教室・貸し会議室などの予約を、WordPress のサイトで受け付けることができます。WordPress 本体には予約機能がないため、予約プラグイン を追加して作ります。
この記事では、プラグインの選び方と、どのプラグインを使っても必要になる WordPress 側の設定、公開前のテストを順に説明します。プラグインの情報は2026年10月時点の WordPress.org の配布ページにもとづきます。
手順1: 予約の型を決める
予約プラグインは、得意な予約の型が違います。最初に、自分の予約がどれに当たるかを決めます。
| 予約の型 | 例 | 決めておくこと |
|---|---|---|
| 日単位・期間 | 宿泊、貸別荘、レンタル品 | チェックイン・チェックアウトの扱い、同時に貸せる数 |
| 時間枠(アポイント) | 美容院、整体、相談、個別レッスン | 枠の長さ、担当者(スタッフ)ごとの空き、休憩・休業日 |
| イベント・定員制 | セミナー、教室、ツアー | 定員、締め切り、キャンセル待ち |
あわせて、次の点も決めておきます。
- 予約を受けたら即確定か、店側が承認してから確定か
- 事前決済が要るか(要るなら、決済に対応したプラグインや有料版が必要になることが多い)
- 予約者に入力してもらう項目(名前・電話番号・メールアドレス・人数・要望など)
- 予約の通知を誰が受け取るか、Google カレンダーなど外部のカレンダーと同期するか
手順2: 予約プラグインを選ぶ
WordPress.org で配布されている代表的な予約プラグインは次のとおりです(2026年10月時点)。いずれも無料版があり、機能を追加する有料版やアドオンがあります。無料版でできる範囲はプラグインごとに違うので、各プラグインのページで確認してください。
| プラグイン | スラッグ | 公式ページでの説明(要約) |
|---|---|---|
| Booking Calendar | booking |
日単位の予約、時間枠のアポイント、レンタル、イベントの予約と問い合わせ |
| Bookly | bookly-responsive-appointment-booking-tool |
アポイント予約。カレンダー管理、リマインダー、決済 |
| Amelia | ameliabooking |
アポイントとイベントの予約。スケジュールと空き状況の管理 |
| Simply Schedule Appointments | simply-schedule-appointments |
アポイント予約、予約カレンダー、通知 |
WooCommerce でネットショップを運営していて、予約を商品として販売したい(決済・注文管理を WooCommerce に任せたい)場合は、WooCommerce 公式の有料拡張機能 WooCommerce Bookings という選択肢もあります。
選ぶときは、次の点を確認します。
- 手順1で決めた予約の型に対応しているか
- 最終更新日と、テスト済みの WordPress のバージョン(配布ページに表示される)
- 日本語で表示できるか(予約フォームの文言を利用者が読める言語で出せるか)
- 予約データを CSV などで書き出せるか(後でプラグインを替える場合に必要)
手順3: インストールして予約ページを作る
- プラグイン → 新規追加 でプラグイン名を検索し、インストールして有効化する
- プラグインの設定画面で、営業時間・休業日・予約枠(または部屋や商品)・担当者・入力項目を設定する
- 固定ページ → 新規追加 で「ご予約」などのページを作り、プラグインが用意している予約フォームのブロック(またはショートコード)を置いて公開する
WP-CLI を使える環境なら、インストールは次のようにもできます(例は Booking Calendar)。
wp plugin install booking --activate
設定画面の場所や項目名はプラグインと版で違います。各プラグインのドキュメントに沿って設定してください。予約プラグインは予約データを独自に管理するため、同じ目的のプラグインを2つ以上同時に有効にしない でください。
手順4: WordPress側で確認する設定
どのプラグインを使う場合も、次の設定で予約の動きが変わります。
タイムゾーンと日付の形式
設定 → 一般 の「タイムゾーン」を確認します。初期値はインストール時の言語などで違い、「UTC+0」のままになっていると、予約の時刻や通知メールの時刻がずれる原因になります。日本で営業するなら、都市名の「東京」を選びます。同じ画面で日付と時刻の表示形式、週の始まりの曜日も決めます。
通知メールが届くか
予約の確認メールや店側への通知は、WordPress のメール送信機能で送られます。サーバーの設定によっては、メールが届かない、迷惑メールに入る、ということがあります。予約サイトでは、メールが届かないと予約者が予約できたかわからなくなるため、公開前に次を確認します。
- 予約者として、Gmail など普段と違うメールアドレスでテスト予約し、確認メールが受信箱に届くか
- 店側の通知が、担当者のメールアドレスに届くか
届かない場合は、SMTP で送信するプラグイン(例: WP Mail SMTP、スラッグ wp-mail-smtp)を使い、契約しているメールサービスのサーバーから送るように設定します。あわせて、送信元のドメインの SPF・DKIM の設定も確認します。
リマインダーとWP-Cron
予約前日のリマインダーメールなど、決まった時刻に動く処理は、多くのプラグインで WordPress の WP-Cron を使います。WP-Cron は、サイトにアクセスがあったときに予定の処理を実行する仕組みです。アクセスが少ない時間帯には、送信が遅れることがあります。
時刻どおりに動かしたい場合は、wp-config.php で WP-Cron の自動実行を止め、サーバーのcron(定期実行)から呼び出します。
<?php
// wp-config.php の「編集が必要なのはここまでです」の行より上に追加
define( 'DISABLE_WP_CRON', true );
# サーバーの crontab に追加(5分ごとに予定の処理を実行する例)
*/5 * * * * cd /path/to/wordpress && wp cron event run --due-now > /dev/null 2>&1
WP-CLI が使えないサーバーでは、wp-cron.php を URL で呼び出す方法もあります。詳しくは WordPressのcronをサーバーのcronで動かす方法 を参考にしてください。
キャッシュから予約ページを外す
ページキャッシュ(キャッシュプラグインやサーバーのキャッシュ機能、CDN)を使っている場合、予約ページの空き状況が古いまま表示されることがあります。予約フォームのある固定ページをキャッシュの対象から外すか、プラグインのドキュメントでキャッシュとの併用方法を確認します。
手順5: 個人情報とスパム対策
予約フォームでは、名前・電話番号・メールアドレスなどの個人情報を受け取ります。
- プライバシーポリシー を用意し、予約で受け取る情報の利用目的・保存期間・問い合わせ先を書きます。WordPress では 設定 → プライバシー でプライバシーポリシーのページを指定できます。
- サイト全体を HTTPS で配信します(フォームの送信内容を暗号化するため)。
- 予約データを見られる WordPress のユーザーを必要な人に限り、管理者のパスワードを強いものにします。
- いたずらの予約やスパムが増える場合は、プラグインが対応している CAPTCHA(reCAPTCHA など)を有効にします。
手順6: 公開前のテスト
本番で受け付ける前に、次の順でテストします。
- スマートフォンとパソコンの両方で、予約ページから予約する
- 予約者と店側の両方に、メールが届くことを確かめる
- 同じ枠に2件目を入れようとしたとき、満席として扱われるか(重複予約が防げるか)
- 休業日・営業時間外・締め切り後の枠が選べないこと
- 予約のキャンセルと変更の流れ(予約者側・店側)
- 事前決済がある場合は、決済サービスのテストモードで決済と返金を試す
テストで作った予約は、公開前に削除しておきます。
運用で気をつけること
- 予約プラグインは、予約データが失われると業務に直接影響します。データベースを含めた自動バックアップを設定し、復元できることを一度確かめておきます。
- プラグインの更新は、予約の少ない時間帯に行い、更新後にテスト予約で動作を確認します。
- 電話や店頭など、ほかの経路で受けた予約も同じ管理画面に入れて、二重予約を防ぎます。
まとめ
- WordPress 本体に予約機能はない。予約の型(日単位・時間枠・イベント)を決めてから、対応する予約プラグインを1つ選ぶ。
- 設定 → 一般 のタイムゾーンを「東京」などに合わせる。
- 通知メールが届くか公開前に確認し、届かなければ SMTP 送信を設定する。リマインダーを時刻どおりに送るならサーバーの cron を使う。
- 予約ページはページキャッシュの対象から外す。プライバシーポリシーと HTTPS を整える。
- 重複予約・休業日・キャンセル・メールをテストしてから公開する。