ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(3)
前回のソースがイマイチだったので若干書き直しました。しかし、これで正しいのかも疑問なんですが、取り敢えずは動きそうなのでこれで進みます。最初に修正した内容を確認しておきます。
最初はクラスファイルから。プロパティを仮の $name とコメント表示用の $comments を追加しました。表示用関数内でHTML内容をコントロール。form の action先は空欄。
wp-contents/plugins/drtehotel/class/initialization.php
<?php class INIT { public $name = ""; public $comments = ""; function show_screen() { 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' />"; 省略
メインのプラグインファイルでアップデートの場合の処理を加えてみました。
wp-contents/plugins/drtehotel/drtehotel.php
省略 function show_text_option_page() { //オブション画面に表示する内容 include_once "class/initialization.php"; $io = new INIT(); //アップデートの確認 if ($_POST['action']=='update') { $io->name = $_POST['name']; $io->comments = '<div id="message" class="updated"><p>更新しました。</p></div>'; } //画面表示 $io->show_screen(); } 省略
表示されている文字などはめちゃくちゃだけど、ここまでの流れは理解できたようです。
保存の前にセキュリティ
データベースに保存する以上、セキュリティについて確認しておく必要があります。わかりやすく説明されているページを見つけたので、いつものように参考にさせていただきます。
http://nskw-style.com/2011/wordpress/secure-plugin.html
wp_nonce_field('example'); <--- form の中に書く。 check_admin_referer('example'); <--- DB に保存する直前に書く。
試しにプラグインファイル(drtehotel.php)にcheck_admin_refererを書き込み、formにwp_nonce_fieldを書き込まないで試してみると。
こんな感じの画面が出ました。check_admin_refererが動いていることが確認できます。
データの保存はデータベースに
続いてデータベースへの保存を学びます。「wp_options」テーブルを使って大丈夫?
update_option('fruits', $fruits);
これだけで保存できるようです。
DBについては次回に。
Sponsored Link
関連記事
-
-
ワードプレス用宿泊予約プラグイン開発「空室情報読み込み」
前回までに作ったカレンダーに空室状況を表示させます。最初に表示欄を作って確認してからデータベースの読
-
-
ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(1)
初心者が、あらためて WordPress のプラグインを一から作る経過報告。たぶん連載記事ですね。途
-
-
WordPressのプラグイン開発を効率的にするフレームワークたち
Wordpressでプラグインを作っていて「フレームワーク使えないのかな?」と疑問を持ちました。そこ
-
-
ワードプレス用宿泊予約プラグイン開発「空室カレンダー表示」
前回ネットで検索して見つけた calendar($year = "", $month = "") 関
-
-
WordPress用プラグインで使う宿泊予約用カレンダーをPHPで書くぜ
ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作るシリーズで使う、空き部
ご質問は掲示板へお願いいたします。