*

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

公開日: : WordPress ,

さっそく空室管理画面を作っていきます。今回は画面設計中心です。部屋タイプの選択と、空き情報を更新する月を指定する部分あたりです。長くなりそうなので2回か3回に分ける予定です。

wp-contents/plugins/drtehotel/drtehotel.php

function show_text_option_page() {
	//空室管理画面に表示する内容
	include_once "class/rooms.php";
	$rm = new ROOM();

「空室管理」メニューをクリックした歳に実行される部分を修正します。あたらしい ROOM クラスを用意ししようするように書換えました。

ROOMクラス用の新しいクラスファイルを用意します。
wp-contents/plugins/drtehotel/class/rooms.php

<?php
class ROOM {
  public $comments = "";
  public $name = "";
  function show_screen() {
	echo '<div class="wrap">';
	echo '<div id="icon-options-general" class="icon32">
              <br /></div><h2>空室管理</h2>';
	echo '<form action="" method="post">';

まずは画面出力を組み立てていきます。プロパティなどは後ほど追加していきます。

スクリーンショット 2013-06-25 22.57.45

まずは部屋タイプを初期設定から取得しセレクトボックスへセットする関数を組み立てます。関数名は部屋タイプが「set_rtypr()」で日付が「set_rdate()」とします。日付は今月と来月と再来月の3ヶ月分です。

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

echo "部屋タイプ:";
echo '<select name="rtypt">';
echo $this->set_rtype();
echo '</select>';
echo " 日付:";
echo '<select name="rdate">';
echo $this->set_rdate();
echo '</select>';

function set_rtype() {
	$op_data = get_option( 'DrTE_option' );
	$rooms = $op_data['DrTE_rooms'];
	$type[0] = $op_data['DrTE_type1'];
	$type[1] = $op_data['DrTE_type2'];
	$type[2] = $op_data['DrTE_type3'];
	$tmp = "";
	for ($i=0; $i<$rooms; $i++) {
		if ($this->rtype==$type[$i])
			$tmp .= '<option value="' . $type[$i] . '"
                        selected="selected">' . $type[$i] . '</option>';
		else
			$tmp .= '<option value="' . $type[$i] . '">'
                        . $type[$i] . '</option>';
	}
	return $tmp;
}

function set_rdate() {
	$month0 = date("Y年m月");
	$month1 = date("Y年m月", strtotime(date("Y-m-1")."+1 month"));
	$month2 = date("Y年m月", strtotime(date("Y-m-1")."+2 month"));
	$tmp = "";
	if ($this->rdate==$month0)
		$tmp .= '<option value="' . $month0 .
                '" selected="selected">' . $month0 . '</option>';
	else
		$tmp .= '<option value="' . $month0 . '">'
                . $month0 . '</option>';
省略

get_option で option テーブルから設定を読み込んで配列を分解します。初期瀬底画面では3種類の部屋タイプまでしか対応していない設計ですが、今後も考えて for でループさせてみました。

$this->rtype で設定されているSELECT値を調べて選択するOPTION値を指定します。

wp-contents/plugins/drtehotel/drtehotel.php

if ($_POST['action']=='change') {
	$rm->rtype = $_POST['rtype'];
	$rm->rdate = $_POST['rdate'];

drtehotel.php の function show_text_option_page() 内に上記の内容を加えます。選択されているセレクトボックスの値を取得してROOMクラスのプロパティにセットしています。

スクリーンショット 2013-06-26 0.05.13

続く


Sponsored Link


 
 

関連記事

ワードプレス用宿泊予約プラグイン開発「空室情報の表示」とか

久しぶりのワードプレスネタ。全然完成しませんわ。今回は最初にブラウザのキャッシュを切る作業をしました

記事を読む

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(7)セキュリティ対策

ここでセキュリティ対策についてまとめて復習してみます。ネットを検索すると、さまざまな対策が紹介されて

記事を読む

WordPressのプラグイン開発を効率的にするフレームワークたち

Wordpressでプラグインを作っていて「フレームワーク使えないのかな?」と疑問を持ちました。そこ

記事を読む

ワードプレス用宿泊予約プラグイン開発「空室カレンダー表示」

前回ネットで検索して見つけた calendar($year = "", $month = "") 関

記事を読む

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

前回の物を若干変更しながら、どんどん進んでいきたいと思います。今回は管理画面の表示内容について行って

記事を読む

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

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 ↑