*

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(6)初期設定画面

公開日: : 最終更新日:2013/06/24 WordPress ,

ここまでで、ひと通りの仕組みというか流れは理解できたような気がします。まずは初期設定画面から制作していくことにします。

初期設定画面で管理する項目をリストアップ

空室情報は「○」「▲」「×」で表示させます。具体的な部屋数などは表示しません。ビジネスホテルや大きなホテルの場合は、部屋数を明示して予約受付=予約完了という方法が可能になります。

しかし小さな宿の場合、運用が不自由になってしまいます。小さな宿の場合は、予約状況や人数などにより柔軟に変更させる必要があるようです。また、空き状況が外部にわかってしまうのもアレなので。

(1)管理者メールアドレス(PC)
(2)管理者予備メールアドレス(携帯)
(3)設置ドメイン
(4)空室数判定基準値
(5)空室表示マーク
(6)弱空室表示マーク
(7)満室表示マーク
(8)空室標準値
(9)部屋タイプ数
(10)部屋タイプ1
(11)部屋タイプ2
(12)部屋タイプ3

(1)と(2)は予約が入った場合にメールが送信されるアドレスです。メインのPCと予備で携帯メールを想定しています。(3)は一応用意しておきます。Wordpressの標準DBにドメインがあるので、本当は必要ないのかもしれません。

(4)管理者側での空き情報は部屋数を入力する形です。予約が入ると部屋数をカウントダウンさせます。残りの部屋数がこの数値以下の場合は空き状況が「○」から「▲」表示に変わります。当然部屋数がゼロになれば「×」です。

(5)〜(7)は○×▲の表示を変更する場合に設定する項目です。例 ◎○×

(8)は新しい日付が追加される場合に、標準で入力される部屋数です。

(9)和室・洋室とか二人部屋・四人部屋など提供する部屋タイプの数を指定します。とりあえず3種類まで対応するシステムとしておきます。(10)以下は部屋タイプの名称を指定します。

HTMLを用意する

主に参考にしたページ 管理メニューの追加

まずは画面設計。先のHTMLを改造していくことにする。クラスファイルに変数を追加し show_init 関数を以下のように改造してみる。

wp-contents/plugins/drtehotel/class/initialization.php

public $mail = "";
public $mail2 = "";
public $url;
 ー略ー
function show_init() {
  echo '<div class="wrap">';
  echo '<div id="icon-options-general" class="icon32"><br /></div><h2>初期設定</h2>';
  echo '<form action="" method="post">';
  echo "<input type='hidden' name='option_page' value='media' />";
  echo '<input type="hidden" name="action" value="update" />';
  echo wp_nonce_field('example');
  echo $this->comments;
  echo "<h3>システム基本設定</h3>";
  echo "<p>設定に間違いが在ると正常に稼働しません。ご注意ください。</p>";
  echo '<p>';
  echo '<table class="form-table">';
  echo '<tr valign="top">';
  echo '<th scope="row">管理者・予約受付メールアドレス(PC用)</th> ';
  echo '<td>';
  echo '<input type="text" name="DrTE_mail" value="' . $this->mail . '">';
  echo '</td>';
以下略

続いて変数を読み込む関数と保存する関数を加える。update_option関数はoptionテーブルを更新(レコードがない場合は新規追加)してくれる便利な関数。そしてそのデータを get_option で読み込むことが可能となる(らしい)。

function update_options() {
  $this->mail = $_POST['DrTE_mail'];
  update_option( 'DrTE_mail', $this->mail );
略
function load_options() {
  $this->mail = get_option('DrTE_mail');	
略

プラグインファイルも修正。

wp-contents/plugins/drtehotel/drtehotel.php

function show_init_page() {
  // 初期設定画面出力
  $io = new INIT();
  //アップデートの確認
  if ($_POST['action']=='update') {
    check_admin_referer('example');
    $io->update_options();
    $io->comments = '<div id="message" class="updated">
         <p>更新しました。</p></div>';
  }
  $io->load_options();
  $io->show_init();
}

前回同様 if で更新かどうか判定。更新の場合はセキュリティチェック(check_admin_referer)をして update_options関数(更新)を実行。更新完了メッセージを出力。load_optionsでテーブルからデータを読み込みプロパティ変数にセット。画面表示という流れになる。

スクリーンショット 2013-06-17 1.51.22

テーブルの幅が狭いのは後ほど調査します。


Sponsored Link


 
 

関連記事

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(1)

初心者が、あらためて WordPress のプラグインを一から作る経過報告。たぶん連載記事ですね。途

記事を読む

WordPressのオリジナルプラグインにショートコード機能を持たせる

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る連載で、ショートコード

記事を読む

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(11)空室管理画面 B

空室管理画面の2回目。今回は空室状況の入力欄と月が変わった時の処理を加えてみます。今回は一覧表示なの

記事を読む

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(10)空室管理画面 A

さっそく空室管理画面を作っていきます。今回は画面設計中心です。部屋タイプの選択と、空き情報を更新する

記事を読む

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(4)データベース基礎

今回はWordPressのプラグイン開発で必要になるデータベースに関する知識ついて調べました。この辺

記事を読む

ご質問は掲示板へお願いいたします。

Message

メールアドレスが公開されることはありません。

CAPTCHA


Optionally add an image (JPEG only)

Sponsored Link

エレコム GRAPH GEAR NEO カメラバッグDGB-P01BKにジンバルを入れる

やっぱり高いけどEndurance (エンデュランス) カメラバッグの

エレコム GRAPH GEAR NEO カメラバッグDGB-P01BKが北の国から

一年中GWの美少女です。 Lowepro カメラリュック フリッ

MOZA Mini-S スマホ用スタビライザーが届いた!

1万円弱で買えるスマホ用ブラシレスジンバルの新型 MOZA Mini-

GoPro Hero7 Black用 保護ケース アルミ合金保護フレームがいいよって話

別に大した話ではありません。 最近書くことが少ないのでたまには書

期待の新製品 MOZA Mini-S スマホ用スタビライザーが発売されたみたい

教えてもらった新製品のホームページで MOZA Mini-Sが紹介され

→もっと見る




  •  

PAGE TOP ↑