ビジネス版追加機能ガイド

ビジネス版は機能追加の頻度が高く、ドキュメンテーションが遅れてしまい利用者の皆様にご不便をお掛けしています。全ての機能をまとめてご紹介できれば良いのですが、間に合っておりませんので少しでも多くの機能をお知らせするため、新機能について随時こちらでご紹介させていただきます。

 

Ver.1.37 カレンダー表示期間と時間割

Ver.1.37 カレンダー表示期間と時間割

Ver.1.37では、新たにカレンダー表示期間の設定機能と、カレンダーから日付選択後の時間割選択画面表示に関して、機能を改善しました。なおこのバージョンはPHP8.3で動作確認を実施しています。

More →

Ver.1.36 ファイルアップロード機能追加

Ver.1.36 ファイルアップロード機能追加

新しいバージョンでは、予約時にファイルをサーバーへアップロードする機能の他、機能の改善を以下の通り実施しました。なおこのバージョンは、PHP8.2の環境で動作確認を実施しています。

  • ファイルアップロード項目追加の選択機能
  • 連絡事項項目の選択機能
  • 管理画面の予約リストの日付カレンダー選択
More →

Ver.1.35 お問合わせフォーム処理の機能追加

お問合せフォーム、メール送信処理に新しく次の機能が追加されました。

  • メールReplay Toの問合せ者メールアドレスの設定
  • フォーム処理情報の追加選択
  • Google reCAPTCHA V3の処理
More →

Ver.1.34 ユーザー項目の追加、ユーザー登録機能、メールテンプレート機能の改良

MTS Simple Bookingビジネス版では、WordPressのユーザー情報で存在しないユーザー項目として、「会社・団体名、フリガナ、郵便番号、住所、電話番号」が追加されております。

これら項目は予約フォームを入力するとき、ログイン状態であれば入力項目にコピーして手間を省くために利用しております。

誕生日と性別を追加しました

この2つの項目を追加しましたがその作業に合わせて、ユーザー情報のデータ登録機能を改良しました。そしてフロントエンドから登録するユーザー登録機能も改良しました。

次の画像はこれまでのユーザーの新規追加画面です。住所など追加項目データは、ユーザー登録後のプロフィール画面で編集保存しておりました。

そして下の画像が新しくなったユーザーの新規追加画面です。「予約システムユーザー情報」以下の入力項目が、新規登録画面に追加されました。

利用するユーザー項目の取捨選択

利用するユーザー項目の設定は、予約入力フォームの入力項目の設定を利用しています。設定は「各種設定の予約メール」にあります。

メールのテンプレート

予約システムから送信するメールには次の5種類があります。

  • 予約メール
    予約フォームを送信して予約を受け付けたときに自動送信する
  • キャンセルメール
    キャンセルを受け付けたときに自動送信する
  • 予約完了メール
    管理者が予約リストから予約者へ予約確認メールを送信する
  • 予約通知メール
    CRON機能によりリマインダーのメールを自動送信する
  • ユーザー登録メール
    フロントエンドからユーザー登録フォームを利用してユーザー登録したとき送信する

予約メールとキャンセルメールのテンプレートは、サイトで共通の「各種設定の予約メール」で設定する1つだけです。一方予約完了メールと予約通知メールは、予約品目に設定されたテンプレートが利用されます。

予約品目に設定するテンプレートは、「メールテンプレート」でテンプレート内容を編集、登録したものを選択します。この「メールテンプレート」機能を改善し、ユーザー登録メールに対してもテンプレートを設定できるようにしました。

またサンプル文を用意し、メール文に埋め込む変数に何があるか分かりやすくしました。

次の画像は、予約完了メールのサンプル文を読み込んだ画面です。「メール件名」と「メール本文」を編集し、「新規追加」ボタンを押してテンプレート文を追加します。追加されたテンプレート文は「テンプレート選択」で選択すれば、再編集できます。

ユーザー登録で送信するメールテンプレートのサンプルもあります。

フロントエンドのユーザー登録機能の改良

Ver.1.33でユーザー登録機能を改良しましたが、今回も機能を改良しました。改良はユーザー登録フォームに、「ユーザー利用規約」のチェック項目を用意した点です。

上の画像の「利用規約」フィールドは、「各種設定のその他」に必要な設定項目を用意しました。

追補

リリース版は先行版に対して、次の改善が実施されています。先行版をご利用のユーザー様はご注意ください。

  • インストール時の予約データテーブル生成の際、CharsetとCollate設定がwp-config.phpのパラメータに依存するよう改善しました。
  • リマインダー機能で各種設定の設定項目において、「cron」チェック項目を消去しました。この値は常時「0」となります。リマインダーの使い方について「Ver.1.21 予約日時が近づいた事を知らせる予約通知メール」内に説明を追加しました。

Ver.1.33 キャンセルボタンでキャンセル実行

予約の確認画面でキャンセルが有効な場合、キャンセルボタンが表示されます。

これまでのキャンセル操作の流れは

キャンセルボタンを押す

キャンセルメール送信

メール掲載のURLをアクセス

キャンセルを実行して終了ページへリダイレクト

でした。

Ver.1.33ではキャンセルボタンを押した直後にキャンセルを実行、終了ページへリダイレクトする操作を選択できるようになりました。

詳細は予約確認画面の機能と合わせて次のページで説明します。

予約の確認とキャンセル Ver.1.33

Ver.1.32 スケジュール管理機能の改造と祝祭日データの取得機能追加

スケジュール管理では、予約品目別に予約受付日を調整できるように、予約品目ごとスケジュールデータが用意されます。

これまでのスケジュール管理の操作では、スケジュールデータを1カ月単位で、予約品目と対象月を指定して編集するようになっておりました。

1カ月単位としたのは、例えばサイト管理がされなくなった際、スケジュールデータが登録されていなければ当該サイトで予約ができないようにするための利用者への配慮として、機能をそのようにしました。

スケジュールデータ

スケジュールデータは、カレンダーの全ての日付に対して用意されます。設定できるデータは、以下の4つです。

  • 予約の受付・中止
  • 予約品目で設定された予約受付数の増減調整値
  • カレンダーのTDタグに設定するclass名
  • 複合カレンダーを除く個別カレンダー内に表示する注記

新しいスケジュール管理

Ver.1.32では、月単位で操作するスケジュール管理は負担が掛かるため、年単位で一括操作できるように改良しました。

また祝祭日について、Googleカレンダーが提供する祝祭日のデータを取り込み、スケジュールデータに反映できる機能を追加しました。

予約品目と編集年の選択

編集予約品目と編集年は、画面上部の「予約品目」、「年」から選択し「変更する」ボタンを押して編集画面を表示します。

一括操作

予約の「受付」、または「中止」に関して、対象となる「月」や「曜日」を選択してボタンを押すことで、一括設定ができます。

個別操作

特定日の設定は、カレンダーで日付をクリックしてください。ダイアログが表示されますので、ダイアログの入力ボックスで編集し、変更ボタンを押します。

祝祭日の読み込み

新しいスケジュール管理では、編集年に関して公開されているGoogleカレンダーから祝祭日を予め読込みます。

画面上部の祝祭日を「読込む」ボタンを押すと、読込んだ祝祭日のデータをスケジュールデータのクラスに「holiday」、注記に祝祭日の情報を設定します。

振替休日の場合は注記内容が長いので、編集のダイアログボックスを利用して適当な長さに変更すると良いでしょう。

※ご注意
祝祭日データは、公開されているGoogleカレンダーに設定されている内容を読込みます。そのため、サービスの変更やデータの書き換えがあった場合、正しく動作しなかったり、内容が異なる場合があるかも知れませんのでご留意ください。

編集データの保存

変更したスケジュールデータは、画面下部にある「保存する」ボタンを押すことでデータベースに登録されます。「保存する」ボタンを押さなければ、データベースに登録されている内容は書き替えられません。

追補) 以前の処理に戻したい場合

プラグインパッケージには、以前のスケジュール管理プログラムを残してあります。

以前の処理に戻すには「mts-simple-booking.php」ファイルで、以下のPHP定義文を変更してください。

ただしプログラムを修正しますので、修正に誤りがあると画面が白く表示されたり、エラーが出力されることがありますのでご注意ください。

変更箇所は「スケジュール管理モジュール」とコメントされた118行目(Ver.1.32.0)です。

  • 新しいスケジュール管理
    const SCHEDULE_MODULE = ‘mtssb-scheduler-admin.php’;
  • 以前のスケジュール管理
    const SCHEDULE_MODULE = ‘mtssb-schedule-admin.php’;

(2019-11-26)

Ver.1.31 料金0円の表示抑制と郵便番号検索機能の改造

料金は予約対象となる人数(大人や小人)や、オプション注文の入力項目に設定することができます。

予約品目やオプション注文項目で料金に0円を設定したり、あるいは計算結果が0円の場合、これまで予約人数の項目は0円を表示、オプション注文の入力項目は表示しないようにしておりました。

予約フォームで上記の入力をすると、確認ページの「ご請求」で次のように表示されました。

新しいVer.1.31では、以下のように0円の表示はしないように修正しました。

人数入力項目が0円の場合、上図のように0円の表示をしません。また確認ページの「ご請求」欄も下図のように表示しないようにしました。


これら表示の抑制は予約フォーム入力画面の他、確認画面、予約メール、予約確認画面に対して修正しております。

郵便番号検索の機能改造

郵便番号から住所を検索して入力フォームにセットする機能は、その機能を提供するサーバーのサービスを利用します。

新しいバージョンではGoogle社のサービス以外に、PostcodeJPを利用できるように機能の追加をしました。

利用方法はGoogleまたはPostcodeJPにユーザー登録を行い、APIキーを取得後、管理画面の各種設定、施設情報タブページにAPIキーを設定すれば利用できるようになります。

「郵便番号検索」でGoogle GeocodingかPostcodeJPか選択して、取得したAPIキーの値を入力、保存してください。

サービスを利用する場合、課金の条件などがありますので、よくサービス規約を確認して利用するようにお願いします。

上記サービスを提供する企業、または運営者について、こちらではお付き合いがないため信頼できるかどうかの判断はできませんので、ご了承ください。

PostcodeJPのサイト » https://postcode-jp.com/

その他の修正

予約品目の新規登録でエラーが発生しておりましたので、修正しました。

また予約の重複チェックにおいて、予約フォームの入力送信時に重複チェック動作を実行、予約確認画面からの予約実行時は重複チェックをしてませんでしたが、Ver.1.31では重複チェックを実行するように変更しました。

Ver.1.30 予約カレンダーの連続月表示機能追加

これまでの「予約カレンダー」と「複合予約カレンダー」の表示は、1カ月の表示でした。

このバージョンではショートコードに月数を指定、当月から連続して出力する機能を追加しました。これにより2カ月、3カ月…、の表示ができるようになります。

ショートコードの設定は「term=”x” title=”” pagination=”0″」の3つのパラメータを追加します。「x」は月数で、デフォルトは1です。

なお翌月(前月)のリンク表示機能が動作しなくなりますので、上記のように「pagination=”0″」を追加して表示しないように設定してください。

次の例は複合予約カレンダー2カ月を表示した例です。ショートコードは次のように設定しました。

[multiple_calendar id=”xx,yy” term=”2″ title=”” pagination=”0″]

Ver.1.29 予約フォーム画面表示用メッセージフィルターの追加

Ver.1.29 予約フォーム画面表示用メッセージフィルターの追加

このバージョンは、Ver.1.28に対しての不具合修正と小さな機能追加です。

追加機能は3つあり、詳細は以下の通りです。

予約フォームページの上下にメッセージを挿入するフィルター

予約の入力フォームは、スラッグ名に「booking-form」と名付けられた固定ページを表示するとき入出力処理が実行されます。プログラムから出力されるフォームデータは、予約処理の流れに応じて次の3つの段階に分かれます。

・入力フォームの表示
・入力確認画面の表示
・送信後の表示

段階に応じて表示出力する内容は変わりますが、当該固定ページのコンテンツに入力した内容の後ろに出力されます(送信後はコンテンツを出力しません)。

メッセージフィルターは、段階に応じて適切な内容を表示したい場合に、異なる内容を出力できるように用意しました。

入力フォームの表示前後のメッセージフィルター

  • booking_form_before
    入力フォーム出力の前に、フィルター関数から渡された文字列を出力します。
  • booking_form_after
    入力フォーム出力の後に、フィルター関数から渡された文字列を出力します。

この機能は以前からありましたが、説明を掲載しておりませんでしたので改めてご紹介します。

メッセージフィルター関数から渡される引数は2つあり、2番目は連想配列で予約品目のIDがインデックス「aid」にセットされています。

サンプルプログラム

add_filters('booking_form_before', 'form_before', 10, 2);
function form_before($str, $param) {
    return '予約フォームページ 前文';
}

add_filters('booking_form_after', 'form_after', 10, 2);
function form_after($str, $param) {
    return '予約フォームページ 後文';
}

入力確認画面の前後のメッセージフィルター

  • booking_form_confirm_before
    入力確認画面出力の前に、フィルター関数から渡された文字列を出力します。
  • booking_form_confirm_after
    入力確認画面出力の後に、フィルター関数から渡された文字列を出力します。

引数、利用方法は前述のフィルターと同様です。

サンプルプログラム

add_filter('booking_form_confirm_before', 'confirm_before', 10, 2);
function confirm_before($str, $param) {
    return sprintf('<strong style="color: red;">確認画面 前文(%d)</strong>', $param['aid']);
}

add_filter('booking_form_confirm_after', 'confirm_after', 10, 2);
function confirm_after($str, $param) {
    return sprintf('<strong style="color: red;">(%d)確認画面 後文</strong>', $param['aid']);
}

フロントエンドの予約確認画面におけるキャンセルボタン表示内容

予約のキャンセルボタンは、各種設定や予約品目に設定されたキャンセルの条件により、フロントエンドで表示する予約検索ページの上部に表示されます。

» Ver.1.8 予約のキャンセル

新しく追加されたメッセージフィルターは、キャンセルボタンに表示する「キャンセル」文字列を書き換えます。

サンプルプログラム

add_filter('subscription_cancel_button_top', 'cancel_button_top');
function cancel_button_top($str) {
    return 'キャンセル実行用メール送信';
}

PayPalボタンの画像入れ替え

PayPalから提供されるボタン画像を変更できるように、各種設定の「料金関係設定」に画像ファイルのURL設定項目を追加しました。

PayPalからお知らせのあった「ロゴ・ボタンのダウンロード」ページリンクは、次の通りです(2018年3月現在)。

» PayPal ロゴ・ボタンのダウンロード

「HTMLコードを取得する」をクリックするとHTMLソースが表示されます。このソースのimgタグで指定されたsrc属性の値(画像のURL)を各種設定の料金関係設定、「PayPalボタンの画像」項目に設定してください。

 

Ver. 1.28 カレンダー表示、予約受付開始の境界選択機能追加

これまで予約の受け付けは、カレンダー表示に合わせていました。管理画面で設定された「月数」の月末までが予約受付期間となります。

新しいVer.1.28は、管理画面に新しい設定項目「予約受付境界」を用意しました。

「予約受付境界」で「日付」を選択すると、カレンダーの表示や予約受付期間が当月から「予約受付期間」で設定した月の当日前まで、となります。例えばブラウザー操作日が「11月3日」なら、2ヶ月後の翌年「1月2日」までが表示、受付期間となります。

「予約受付境界」で「月最終日」を選択した場合(デフォルト設定です)、これまで通り最終表示月の最終日までとなります。

「予約受付期間=2、予約受付境界=日付」を設定した時のカレンダーの例:

この予約受付境界の設定は、予約カレンダーを含めて全てのカレンダー表示に有効です。

その他の変更機能

「複合予約カレンダー」の表示で、スケジュール管理データの「td」タグに設定する「class」属性は、先頭に指定された予約品目のスケジュールデータが表示されます。

同じくスケジュール管理データの「注記」は、これまで出力されませんでした。

新しいVer.1.28では、class属性と同様、先頭に指定された予約品目のスケジュールデータのものを出力するように、機能を変更しました。