writing_plugins_options.ppt



Similar documents
REALV5_A4…p_Ł\1_4A_OCF

untitled

「都市から地方への人材誘致・移住促進に関する調査」

<91498EE88CA D815B2E786C73>

〔 大 会 役 員 〕

橡本体資料+参考条文.PDF

Lecture on

コンピュータサイエンス 4. ウェブプログラミング

コンピュータサイエンス 1. ウェブの基本

PowerPoint プレゼンテーション

WordPress Ktai Style Ktai Entry 18 Mac 18


講 義 内 容 前 回 の 提 出 課 題 の 解 答 例 復 習 データを 送 信 するための HTML (フォーム) PHPによるフォームデータの 処 理 2

JavaScriptプログラミング入門



No.28

jquery02.html $("#btn").click(function(){ price = 0; if($("#cb1").prop('checked')) price += 650; if($("#cb2").prop('checked')) price += 300; if($("#cb

項 目

●70974_100_AC009160_KAPヘ<3099>ーシス自動車約款(11.10).indb

JPROM-PRINT

untitled

B5‘·¢‡Ì…X…X…†PDFŠp

to-r

untitled

改訂版 :基本的な文字化の原則(Basic Transcription System for Japanese: BTSJ)

Microsoft PowerPoint ppt

imagio Wide 7040

3 3.1 SSedit ua012345% ssedit SuperSQL config.ssql log.txt( logs.txt) SSedit SSedit 3.2 ssql Putty SSedit ua012345% ssql HTML /public html/ssql.ssql 4

ONPRESS190


広報しもつけp01ol

¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°ÆÃÏÀ

Web±ÜÍ÷¤Î³Ú¤·¤µ¤ò¹â¤á¤ëWeb¥Ú¡¼¥¸²Äݲ½¥·¥¹¥Æ¥à

Microsoft Word - class_specification_guide_v60.doc

プリント

2.3 ssqltool (3.1 ) postgresql (ua ) itc.db.ics.keio.ac.jp /public html/ssql SuperSQL HTML /public html/ssql /ssql/xxxx.

CodeIgniter Con 2011, Tokyo Japan, February

方程式を解いてみよう! C++ から PHP + JavaScriptへ

1 1.1 CGI CGI(Common Gateway Interface) CGI CGI CGI Perl Ruby CGI HTML Ruby 2 CGI ( ) HTTP(Hypertext Transfer Protocol) httpd UNIX OS Apache Apache Ap

(1) <html>,,,,, <> ( ) (/ ) (2) <!DOCTYPE html> HTML5 (3) <html> HTML (4) <html lang= ja > html (ja) (5) JavaScript CSS (6) <meta charset= shift jis >

インターネットマガジン2001年3月号―INTERNET magazine No.74

インターネットマガジン1999年2月号―INTERNET magazine No.49

untitled

2

/ 0/0/ : 実 結 果 HTMLファイルを 表 します 下 図 の 画 が 表 されます " 出 し"の 部 分 をクリックすると"コンテンツですよ "の 字 が 表 されます もう 度 " 出 し"をクリックすると"コンテンツですよ "の 字 が 非 表 になります 折 りたたみパネルの 基

ULTINA On Demand Platform シェアードホスティング管理者マニュアル ソフトバンク


無線LAN VoIP 高度化技術

サーバサイドスクリプトPHPを実感しよう

PowerPoint プレゼンテーション

java_servlet2_見本


jquery

Transcription:

check_admin_referer(), wp_nonce_field()

function my_plugin_menu() { add_options_page( ('My Plugin Options','my_plugin'), ('My Plugin','my_plugin'), 'manage_options', FILE, 'my_plugin_options'); } add_action('admin_menu', 'my_plugin_menu'); 3. function my_plugin_options() {?><div class="wrap"> <?php /* */?> </div><?php }

$My_Plugin_Options = new My_Plugin_Options; class My_Plugin_Options { public function construct() { add_action('admin_menu', array($this,'add_menu')); } public function add_menu() { add_options_page( ('My Plugin Options','my_plugin'), ('My Plugin','my_plugin'), 'manage_options', FILE, array($this, 'options_page')); } public function options_page () { /* */ } /* End of class */ }

add_options_page( $page_title, /* */ $menu_title, /* */ $access_level, /* 8 */ $file, /* FILE */ $function /* */ )

public function options_page () { if (isset($_post['update_option'])) { check_admin_referer('my_plugin-options'); $this->upate_options();?> <div class="updated fade"><p><strong><?php _e('options saved.');?></strong></p></div> <?php } $font_color = get_option('my_plugin_font_color');?> <div class="wrap"> <h2><?php _e('my Plugin Options', 'my_plugin');?></h2> <form name="form" method="post" action=""> <input type="hidden" name="action" value="update" /> <?php wp_nonce_field('my_plugin-options');?> <!-- -->

wp_nonce_field check_admin_referer wp_nonce_field('field_name'); check_admin_referer('field_name');

<table class="form-table"><tbody><tr> <th><label for="my_plugin_font_color"><?php _e('font Color', 'my_plugin');?></label></th> <td><input type="text" name="my_plugin_font_color" id="my_plugin_font_color" value="<?php echo attribute_escape($font_color);?>" /></td> </tr></tbody></table> <p class="submit"> <input type="submit" name="update_option" class="buttonprimary" value="<?php _e('save Changes');?>" /> </p> </form></div>

private function update_option() { } if (isset($_post['my_plugin_font_color'])) { } $font_color = stripslashes( $_POST['my_plugin_font_color'] ); if (preg_match('/^#[0-9a-fa-f]+$/', $font_color)) { } update_option('my_plugin_font_color', $font_color); $_POST addslashes() stripslashes()

<tr> <th><?php _e('bold Style', 'my_plugin');?></th> <td><label> <input type="checkbox" name="my_plugin_use_bold" id="my_plugin_use_bold"<?php checked($use_bold);?> /> <?php _e('use bold style for link', 'my_plugin');?> </label></td> </tr>

checked($checked, $current) $checked $current checked('post', $post_or_page) checked($checked) $checked == true

<tr><th><?php _e('emphasis Style', 'my_plugin');?></th> <td> <label><input type="radio" name="my_plugin_emphasis" id="my_plugin_emphasis-strong" value="strong" <?php checked('strong', $emphasis_sytle);?>/> <?php _e('strong', 'my_plugin');?></label> <br /> <label><input type="radio" name="my_plugin_emphasis" id="my_plugin_emphasis-em" value="em" <?php checked('em', $emphasis_sytle);?>/> <?php _e('em', 'my_plugin');?></label> </td> </tr>

$intervals = array(0, 2, 5, 10, 15, 30, 60);?> <tr> <th><label for="my_plugin_interval"><?php _e('retieval Interval', 'my_plugin');?></label></th> <td> <select name="my_plugin_interval" id="my_plugin_interval"> <?php foreach ($intervals as $i) {?> <option value="<?php echo intval($i);?>" <?php selected($i, $interval);?> /> <?php _e($i. ' min', 'my_plugin');?></option> <?php }?> </select> </td> </tr>

selected($selected, $current) $selcted $current selected(15, $interval) selected($selected) $selected == true

wp_specialchars($string) attribute_escape($attribute) <input type="input" value="<?php echo attribute_escape($opt_value);?>".. etc_html(), esc_attr() clean_url($url) esc_url()

<form method="post" action=""> action="<?php echo str_replace('%7e','~', $_SERVER['REQUEST_URI']);?>"