トラブルシューティング
このページでは、Smart Booking を使っていて起こりやすい症状ごとに、原因の切り分けと確認する場所をまとめています。 設定項目そのものの説明は、それぞれの解説ページへのリンクをたどってください。
症状から探す
メールが届かない
まず、届かないのが お客さま宛 のメールなのか、管理者宛(WordPress の管理者・店舗・担当者に届く「予約受付メール(管理者宛)」)なのかを切り分けてください。 お客さま宛は届いているのに管理者宛だけ届かない場合は、送信条件の設定が原因であることが多く、プラグインの設定で解決できます。 お客さま宛も届かない場合は、サーバーやドメイン側の問題が考えられます。
管理者宛だけ届かない: 送信条件を確認する
予約受付メール(管理者宛)が誰に届くかは、Smart Booking → 設定 → メール通知 にある 管理者へのメール のスイッチと、店舗・担当者のメールアドレスの登録状況で決まります。
| 管理者へのメール | 店舗のメールアドレス | 届く宛先 |
|---|---|---|
| オン | 登録あり | WordPress の管理者メールアドレスと店舗。担当者のメールアドレスを登録していれば、担当者にもCCで届きます |
| オン | 未登録、または形式が正しくない | WordPress の管理者メールアドレス。担当者のメールアドレスを登録していれば、担当者にもCCで届きます |
| オフ | 登録あり | 店舗。担当者のメールアドレスを登録していれば、担当者にもCCで届きます |
| オフ | 未登録、または形式が正しくない | どこにも届きません。担当者のメールアドレスを登録していても送信されません |
確認する場所は次のとおりです。
- Smart Booking → 設定 → メール通知 を開き、管理者へのメール がオンかオフかを確認します。
- オフにしている場合は、Smart Booking → 店舗・担当者 で店舗の編集画面を開き、メールアドレス が登録されているか、入力に誤りがないかを確認します。
- 担当者に届けたい場合は、担当者の編集画面の メールアドレス も確認します。担当者はCCで届くため、店舗のメールアドレス(または 管理者へのメール のオン)が前提になります。
管理者へのメール がオフで店舗のメールアドレスが未登録のまま予約が入ると、担当者のメールアドレスを登録している場合に限り、メール通知 タブの先頭に次の注意が表示されます。
「管理者へのメール」がオフで、店舗のメールアドレスが未登録のため、担当者宛の通知も送信されませんでした。店舗にメールアドレスを登録するか、「管理者へのメール」をオンにしてください。
店舗も担当者もメールアドレスを登録していないときは、管理者宛の通知を意図的に止めている運用とみなされ、この注意は表示されません。
メール通知 タブに表示される注意は、いちばん新しい1件だけ が記録されます。そのあと、いずれかのメール(お客さま宛を含む)が正常に送信されると表示は消え、送信がないまま 30日 が過ぎた場合も自動的に消えます。 ほかの注意表示(送信失敗、件名・本文が空、宛先が正しくない)の意味と対処は メール通知の設定 をご覧ください。
お客さま宛も届かない、または注意表示が出ないのに届かない: サーバー・ドメイン側を確認する
メール通知 タブに注意が出ていないのにメールが届かない場合は、プラグインはメールを送り出せているものの、その先で捨てられている状態です。 典型的なのは、お客さまへの自動返信は届くのに管理者宛だけが迷惑メールとして扱われる、というケースです。 これはプラグインの設定ではなく、サーバーやドメインのメール送信環境の問題です。
主な原因は次の2つです。
- サーバーのメール送信環境が整っていない — WordPress は、サーバーに備わっているメール送信の仕組みをそのまま使います。サーバーによっては送信の設定がされておらず、エラーにならないまま届かないことがあります。
- 受信側で迷惑メールと判定されている — 差出人のドメインが「正当な送信元」であることを受信側に示せていないと、迷惑メールフォルダに入ったり、受信を拒否されたりします。
対処は次のとおりです。
- SMTP 送信プラグインを使う — WP Mail SMTP などの SMTP プラグインを導入し、認証済みのメールサーバーやメール配信サービスを経由して送るようにします。
- 送信ドメインの認証を設定する — 独自ドメインの DNS に SPF・DKIM・DMARC の設定を追加します。いずれも「このドメインから送られたメールは正当なものです」と受信側に示すための DNS の設定で、SMTP プラグインや配信サービスの案内に従って登録します。
- 差出人メールアドレスを実在する独自ドメインのアドレスにする — Smart Booking → 設定 → メール通知 の 差出人設定 にある 差出人メールアドレス に、実際に運用している独自ドメインのアドレスを入れます。フリーメールのアドレスを差出人にしてサーバーから直接送ると、迷惑メールと判定されやすくなります。
- SMTP プラグイン側の差出人と一致させる — SMTP プラグインに設定した差出人と、Smart Booking の 差出人メールアドレス が食い違っていると、受信側で弾かれやすくなります。同じアドレスに揃えてください。
なお、差出人設定 を空欄にした場合、差出人名 には WordPress の「サイトのタイトル」が、差出人メールアドレス には WordPress の管理者メールアドレスが使われます(差出人メールアドレスは、形式が正しくない場合も同様です)。
詳しい設定方法は、ご利用中のサーバー会社(レンタルサーバー・ドメイン管理会社)へお問い合わせください。
予約フォームが表示されない
予約フォームは、固定ページや投稿の本文に貼ったショートコード [smart_booking] の位置に表示されます。
表示されないときは、まず「ショートコードの文字がそのまま見えている」のか「何も表示されない(空白)」のか「エラーの文章が出ている」のかを確認してください。
ショートコードの文字がそのまま表示される
ショートコードとして認識されていません。次の点を確認してください。
- プラグインが 有効 になっているか(WordPress 管理画面の プラグイン 一覧)
- 括弧が半角の
[]になっているか(全角の「[」「]」では動きません) - スペルが
smart_bookingになっているか(smart-bookingやsmartbookingでは動きません) - 属性を付ける場合は
[smart_booking store_id="1"][smart_booking form_id="2"]のように、半角スペースで区切り、値を半角の"で囲んでいるか
ショートコードで指定できる属性は store_id(店舗を固定する)と form_id(使うフォームを指定する)の2つだけです。それ以外の属性を書いても無視されます。
正しいショートコードは管理画面からコピーできます。フォームごとのショートコードは Smart Booking → フォーム設定 の上部に、店舗を指定するショートコードは Smart Booking → 店舗・担当者 の各店舗に表示されています。
何も表示されない(空白になる)
予約フォームを動かすためのスクリプトは、固定ページ・投稿などの単一ページを開いていて、そのページの本文にショートコードが書かれているとき にだけ読み込まれます。 そのため、次のような場所に貼ると、ショートコードが処理されてもスクリプトが読み込まれず、何も表示されません。
- ウィジェット(サイドバーやフッター)
- テーマのテンプレートファイル、ブロックテーマのテンプレートやテンプレートパーツ
- 投稿一覧やアーカイブなど、複数の記事を並べて表示するページ
予約フォームは、固定ページまたは投稿の 本文 に貼ってください。
あわせて、そのページが 公開 されているかも確認してください。下書きや非公開のページは、ログインしていない訪問者には表示されません。
エラーの文章が表示される
- 「指定された店舗は現在予約を受け付けていません。」 —
store_idで指定した店舗が存在しないか、無効 になっています。Smart Booking → 店舗・担当者 で店舗のスイッチが 有効 になっているか、ショートコードのstore_idがその店舗のものかを確認してください。店舗の呼び方を変えている場合は、「店舗」の部分がその呼び方で表示されます。 - 「通信に失敗しました (HTTP 404)」 のような通信エラー — 下の 管理画面でエラーが出る(通信エラー・404) をご覧ください。
- 「セッションの有効期限が切れました。ページを再読み込みしてください。」 — ページを再読み込みすると解消します。何度も出る場合は、次の「キャッシュ・ほかのプラグインとの競合」を確認してください。
なお、form_id に存在しないフォームの番号を指定した場合はエラーにならず、既定のフォームが表示されます。フォームの番号は 複数フォームの使い分け をご覧ください。
キャッシュ・ほかのプラグインとの競合(一般的な対処)
ここから先はプラグインの仕様ではなく、WordPress サイト全般に当てはまる一般的な対処です。
- ページ全体をキャッシュするプラグインやサーバーのキャッシュ機能を使っている場合は、予約フォームを設置したページをキャッシュの対象から外してください。
- JavaScript を圧縮・結合する最適化プラグインを使っている場合は、いったん無効にして表示されるかを確認してください。
- テーマやほかのプラグインとの競合が疑われる場合は、いったん標準テーマに切り替える、ほかのプラグインを一時的に無効にする、といった切り分けを行ってください。
設置方法の基本は 予約フォームの設置 をご覧ください。
時間枠が表示されない
予約フォームで日付を選んでも時間枠が出ない、あるいは日付そのものが選べない(取り消し線が付いている)ときは、次の順に確認してください。
1. 予約枠(スケジュール)が登録されているか
予約フォームに出るのは、Smart Booking → スケジュール で登録した予約枠だけです。 予約枠が1つもない日付は取り消し線が付いて選べません。登録方法は スケジュールの登録 をご覧ください。
2. 別の店舗・担当者に登録していないか
予約フォームには、お客さまが選んでいる店舗・担当者の予約枠だけ が表示されます。
- 店舗選択ステップ をオフにしている場合(初期値はオフです)、店舗は 店舗一覧の先頭の店舗 が自動的に選ばれます。2番目以降の店舗に予約枠を登録していても、予約フォームには出ません。既定にしたい店舗は、Smart Booking → 店舗・担当者 の一覧で ↑ ↓ を使って先頭に並べてください。
- ショートコードで
store_idを指定している場合は、その店舗の予約枠だけが表示されます。 - 担当者選択ステップ をオンにしている場合は、お客さまが選んだ担当者の予約枠だけが表示されます。
店舗・担当者のステップの設定は Smart Booking → 設定 → 基本設定 の フロント表示 にあります(設定リファレンス)。
3. 表示期間の外ではないか
Smart Booking → 設定 → 基本設定 の 表示期間 で決めた日数より先の日付は、予約枠を登録してあっても予約フォームに出ません。 初期値は 14日先まで で、今日を含めて数えます。選べるのは 14日先まで 30日先まで(1ヶ月) 60日先まで(2ヶ月) 90日先まで(3ヶ月) の4つです。 先の日程まで受け付けたい場合は、表示期間を長くしてください。
4. 予約締切を過ぎていないか
Smart Booking → 設定 → 基本設定 の 予約締切 で設定した締切(何時間前まで受け付けるか / 何日前まで受け付けるか)を過ぎた枠は、締切 と表示され、先頭に × が付いて選べなくなります。 初期値は ○時間前まで の 2 です。たとえば 14:00 の枠は 12:00 になると 締切 になります。 また、開始時刻をすでに過ぎている枠は、締切の設定に関わらず 締切 になります。
5. 定員に達していないか
その枠の予約数が定員に達すると 満席 と表示され、先頭に × が付いて選べなくなります。 定員は予約枠ごとに設定します(スケジュールの登録)。
6. 予約枠を一時停止していないか
予約枠の編集画面にある 利用可能 のスイッチを 一時的に停止(臨時休業など) 側にした枠は、予約フォームに 表示されません(満席 や 締切 のような表示にもなりません)。 Smart Booking → スケジュール では、その枠が 停止中 と表示されます。停止を解除するには、スイッチを 予約を受け付ける(通常) に戻してください。
日付の表示について
その日の予約枠がすべて選べない状態のときは、日付にも取り消し線が付いて選べなくなります。 すべての枠が 締切 の場合は日付に 締切 と表示され、すべて 満席 の場合や、満席 と 締切 が混ざっている場合は 満席 と表示されます。
表示文言を変えている場合
残りわずか 満席 締切 の文言は、Smart Booking → 設定 → 基本設定 の 空き状況の表示 で変更できます。 文言を変えている場合は、このページの 満席 締切 をその文言に読み替えてください。詳しくは 設定リファレンス をご覧ください。
管理画面でエラーが出る(通信エラー・404)
管理画面の各ページを開いたときに「通信に失敗しました (HTTP 404)」のようなメッセージが出て内容が表示されない場合、管理画面とサーバーとの通信が失敗しています。 同じ原因で、予約フォーム側でも「通信に失敗しました (HTTP 404)」と表示されることがあります。
プラグインを最新版に更新する
WordPress の 設定 → パーマリンク が「基本」になっている環境で、予約フォームや管理画面の通信が 404 になって動作しない不具合がありました。 この不具合は v0.2.3 で修正済み です。古いバージョンを使っている場合は、WordPress 管理画面の プラグイン 画面から Smart Booking を最新版に更新してください。 バージョンごとの変更内容は 更新履歴 をご覧ください。
更新しても直らないとき(一般的な対処)
ここから先はプラグインの仕様ではなく、WordPress サイト全般に当てはまる一般的な対処です。
- WordPress の 設定 → パーマリンク を開き、何も変えずに 変更を保存 をクリックして、URL の設定を保存し直してください。
- セキュリティ系のプラグインやサーバーの設定で、WordPress の REST API(管理画面や予約フォームが通信に使う仕組み)がブロックされていないかを確認してください。
- それでも解消しない場合は、ほかのプラグインを一時的に無効にして切り分けてください。