Submit Search
Upload
WordPress widget api
•
2 likes
•
705 views
Takami Kazuya
Follow
2015-06-20 WordBench宮崎勉強会資料
Read less
Read more
Engineering
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 34
Download now
Download to read offline
Recommended
Vue入門
Vue入門
Takeo Noda
Try Jetpack
Try Jetpack
Hideaki Miyake
20120118 titanium
20120118 titanium
Hiroshi Oyamada
はじめよう JavaFX 2.x(第3回 岡山Javaユーザー会)
はじめよう JavaFX 2.x(第3回 岡山Javaユーザー会)
a know
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
Yuichi Sakuraba
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤
Yuichi Sakuraba
プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話
Shohei Okada
はじめてのVue.js
はじめてのVue.js
Kei Yagi
Recommended
Vue入門
Vue入門
Takeo Noda
Try Jetpack
Try Jetpack
Hideaki Miyake
20120118 titanium
20120118 titanium
Hiroshi Oyamada
はじめよう JavaFX 2.x(第3回 岡山Javaユーザー会)
はじめよう JavaFX 2.x(第3回 岡山Javaユーザー会)
a know
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
Yuichi Sakuraba
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤
Yuichi Sakuraba
プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話
Shohei Okada
はじめてのVue.js
はじめてのVue.js
Kei Yagi
Ruby on Rails Tutorial Chapter8-10
Ruby on Rails Tutorial Chapter8-10
Sea Mountain
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
Hiroaki KOBAYASHI
Scene BuilderでFXML
Scene BuilderでFXML
Yuichi Sakuraba
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
Shinya Mochida
Apexデザインパターン
Apexデザインパターン
Salesforce Developers Japan
Magento meet up Tokyo#1 for Design
Magento meet up Tokyo#1 for Design
Miho Nakano
T90 きっと怖くないmvvm & mvpvm
T90 きっと怖くないmvvm & mvpvm
伸男 伊藤
WordPress×jQueryMobile
WordPress×jQueryMobile
Takami Kazuya
何が変わった JavaFX 2.0
何が変わった JavaFX 2.0
Yuichi Sakuraba
Mvpvm pattern
Mvpvm pattern
Mami Shiino
大阪Node学園八時限目 「expressで作るWebアプリ」
大阪Node学園八時限目 「expressで作るWebアプリ」
Shunsuke Watanabe
Vue.jsの関連ツール・ライブラリ(Vuex, Vue-Router, Nuxt)
Vue.jsの関連ツール・ライブラリ(Vuex, Vue-Router, Nuxt)
Kei Yagi
concrete5デザインカスタマイズに必要なPHPの知識
concrete5デザインカスタマイズに必要なPHPの知識
Hishikawa Takuro
Form libraries
Form libraries
Atsushi Odagiri
Knocked out in knockout js
Knocked out in knockout js
Hiroyuki Tashima
Vue.js 基礎 + Vue CLI の使い方
Vue.js 基礎 + Vue CLI の使い方
Kei Yagi
I Log On Saa S
I Log On Saa S
totty jp
Vue Router + Vuex
Vue Router + Vuex
Kei Yagi
PHP勉強会 #51
PHP勉強会 #51
Takako Miyagawa
20200304 vuejs
20200304 vuejs
yamamotomsc
20091030cakephphandson 01
20091030cakephphandson 01
Yusuke Ando
Visualforce + jQuery
Visualforce + jQuery
Salesforce Developers Japan
More Related Content
What's hot
Ruby on Rails Tutorial Chapter8-10
Ruby on Rails Tutorial Chapter8-10
Sea Mountain
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
Hiroaki KOBAYASHI
Scene BuilderでFXML
Scene BuilderでFXML
Yuichi Sakuraba
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
Shinya Mochida
Apexデザインパターン
Apexデザインパターン
Salesforce Developers Japan
Magento meet up Tokyo#1 for Design
Magento meet up Tokyo#1 for Design
Miho Nakano
T90 きっと怖くないmvvm & mvpvm
T90 きっと怖くないmvvm & mvpvm
伸男 伊藤
WordPress×jQueryMobile
WordPress×jQueryMobile
Takami Kazuya
何が変わった JavaFX 2.0
何が変わった JavaFX 2.0
Yuichi Sakuraba
Mvpvm pattern
Mvpvm pattern
Mami Shiino
大阪Node学園八時限目 「expressで作るWebアプリ」
大阪Node学園八時限目 「expressで作るWebアプリ」
Shunsuke Watanabe
Vue.jsの関連ツール・ライブラリ(Vuex, Vue-Router, Nuxt)
Vue.jsの関連ツール・ライブラリ(Vuex, Vue-Router, Nuxt)
Kei Yagi
concrete5デザインカスタマイズに必要なPHPの知識
concrete5デザインカスタマイズに必要なPHPの知識
Hishikawa Takuro
Form libraries
Form libraries
Atsushi Odagiri
Knocked out in knockout js
Knocked out in knockout js
Hiroyuki Tashima
Vue.js 基礎 + Vue CLI の使い方
Vue.js 基礎 + Vue CLI の使い方
Kei Yagi
I Log On Saa S
I Log On Saa S
totty jp
Vue Router + Vuex
Vue Router + Vuex
Kei Yagi
PHP勉強会 #51
PHP勉強会 #51
Takako Miyagawa
20200304 vuejs
20200304 vuejs
yamamotomsc
What's hot
(20)
Ruby on Rails Tutorial Chapter8-10
Ruby on Rails Tutorial Chapter8-10
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
Scene BuilderでFXML
Scene BuilderでFXML
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
Apexデザインパターン
Apexデザインパターン
Magento meet up Tokyo#1 for Design
Magento meet up Tokyo#1 for Design
T90 きっと怖くないmvvm & mvpvm
T90 きっと怖くないmvvm & mvpvm
WordPress×jQueryMobile
WordPress×jQueryMobile
何が変わった JavaFX 2.0
何が変わった JavaFX 2.0
Mvpvm pattern
Mvpvm pattern
大阪Node学園八時限目 「expressで作るWebアプリ」
大阪Node学園八時限目 「expressで作るWebアプリ」
Vue.jsの関連ツール・ライブラリ(Vuex, Vue-Router, Nuxt)
Vue.jsの関連ツール・ライブラリ(Vuex, Vue-Router, Nuxt)
concrete5デザインカスタマイズに必要なPHPの知識
concrete5デザインカスタマイズに必要なPHPの知識
Form libraries
Form libraries
Knocked out in knockout js
Knocked out in knockout js
Vue.js 基礎 + Vue CLI の使い方
Vue.js 基礎 + Vue CLI の使い方
I Log On Saa S
I Log On Saa S
Vue Router + Vuex
Vue Router + Vuex
PHP勉強会 #51
PHP勉強会 #51
20200304 vuejs
20200304 vuejs
Similar to WordPress widget api
20091030cakephphandson 01
20091030cakephphandson 01
Yusuke Ando
Visualforce + jQuery
Visualforce + jQuery
Salesforce Developers Japan
EC-CUBEプラグイン講義
EC-CUBEプラグイン講義
ria1201
Lighting componentワークブック(経費精算アプリ)
Lighting componentワークブック(経費精算アプリ)
Akihiro Iwaya
SaCSS vol.24
SaCSS vol.24
jun sugimoto
SaCSS vol. 24
SaCSS vol. 24
jun sugimoto
Tech talk salesforce mobile sdk
Tech talk salesforce mobile sdk
Kazuki Nakajima
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
Shotaro Suzuki
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
Y Watanabe
CodeIgniterによるPhwittr
CodeIgniterによるPhwittr
kenjis
WordPressプラグイン作成入門
WordPressプラグイン作成入門
Yuji Nojima
FxUG in Toyama - ASphalt2 container -
FxUG in Toyama - ASphalt2 container -
Akio Katayama
FxUG in Toyama - ASphalt2 container -
FxUG in Toyama - ASphalt2 container -
Akio Katayama
15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )
hiro345
20150207コデアルエンジニア学生向けハッカソン就活イベント発表資料
20150207コデアルエンジニア学生向けハッカソン就活イベント発表資料
codeal
G*workshop 2011/11/22 Geb+Betamax
G*workshop 2011/11/22 Geb+Betamax
Nobuhiro Sue
WordBech Osaka No.28
WordBech Osaka No.28
Kite Koga
Ma_gician (世界中のフロントエンダーの残業時間を減らす、新しいフロントエンドフレームワーク)<詳細版>
Ma_gician (世界中のフロントエンダーの残業時間を減らす、新しいフロントエンドフレームワーク)<詳細版>
Eucen Stew
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発
Akira Inoue
20120507 zendform
20120507 zendform
Yusuke Ando
Similar to WordPress widget api
(20)
20091030cakephphandson 01
20091030cakephphandson 01
Visualforce + jQuery
Visualforce + jQuery
EC-CUBEプラグイン講義
EC-CUBEプラグイン講義
Lighting componentワークブック(経費精算アプリ)
Lighting componentワークブック(経費精算アプリ)
SaCSS vol.24
SaCSS vol.24
SaCSS vol. 24
SaCSS vol. 24
Tech talk salesforce mobile sdk
Tech talk salesforce mobile sdk
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
CodeIgniterによるPhwittr
CodeIgniterによるPhwittr
WordPressプラグイン作成入門
WordPressプラグイン作成入門
FxUG in Toyama - ASphalt2 container -
FxUG in Toyama - ASphalt2 container -
FxUG in Toyama - ASphalt2 container -
FxUG in Toyama - ASphalt2 container -
15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )
20150207コデアルエンジニア学生向けハッカソン就活イベント発表資料
20150207コデアルエンジニア学生向けハッカソン就活イベント発表資料
G*workshop 2011/11/22 Geb+Betamax
G*workshop 2011/11/22 Geb+Betamax
WordBech Osaka No.28
WordBech Osaka No.28
Ma_gician (世界中のフロントエンダーの残業時間を減らす、新しいフロントエンドフレームワーク)<詳細版>
Ma_gician (世界中のフロントエンダーの残業時間を減らす、新しいフロントエンドフレームワーク)<詳細版>
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発
20120507 zendform
20120507 zendform
More from Takami Kazuya
HTML栄枯盛衰は世の習い
HTML栄枯盛衰は世の習い
Takami Kazuya
Google Apps Script 入門
Google Apps Script 入門
Takami Kazuya
GoogleAppsScript入門
GoogleAppsScript入門
Takami Kazuya
Googleデータポータルで見える化に挑戦vol.2
Googleデータポータルで見える化に挑戦vol.2
Takami Kazuya
WordPressで考えるこれからのコンテンツ制作
WordPressで考えるこれからのコンテンツ制作
Takami Kazuya
WordPressをこれから始める人のためのテーマ講座
WordPressをこれから始める人のためのテーマ講座
Takami Kazuya
WordPress+AMP
WordPress+AMP
Takami Kazuya
WordPress+JSON-LDで構造化するこれからのマークアップ WordFes Nagoya 2016
WordPress+JSON-LDで構造化するこれからのマークアップ WordFes Nagoya 2016
Takami Kazuya
WordPress + JSON-LDで構造化するこれからのマークアップ
WordPress + JSON-LDで構造化するこれからのマークアップ
Takami Kazuya
jQuery3.0-beta1-point
jQuery3.0-beta1-point
Takami Kazuya
プラグイン公開までの道のり
プラグイン公開までの道のり
Takami Kazuya
History api
History api
Takami Kazuya
JSON-LD schema.org定義によるデータ構造化のススメ
JSON-LD schema.org定義によるデータ構造化のススメ
Takami Kazuya
Miyazaki.js vol.2
Miyazaki.js vol.2
Takami Kazuya
React Facebook JavaScript Library
React Facebook JavaScript Library
Takami Kazuya
Wordpress カスタム投稿
Wordpress カスタム投稿
Takami Kazuya
WordPressプラグインの作り方
WordPressプラグインの作り方
Takami Kazuya
【WordBench宮崎】第3回・4回アンケート報告
【WordBench宮崎】第3回・4回アンケート報告
Takami Kazuya
WordPressプラグイン考察
WordPressプラグイン考察
Takami Kazuya
WordPressテーマ作成
WordPressテーマ作成
Takami Kazuya
More from Takami Kazuya
(20)
HTML栄枯盛衰は世の習い
HTML栄枯盛衰は世の習い
Google Apps Script 入門
Google Apps Script 入門
GoogleAppsScript入門
GoogleAppsScript入門
Googleデータポータルで見える化に挑戦vol.2
Googleデータポータルで見える化に挑戦vol.2
WordPressで考えるこれからのコンテンツ制作
WordPressで考えるこれからのコンテンツ制作
WordPressをこれから始める人のためのテーマ講座
WordPressをこれから始める人のためのテーマ講座
WordPress+AMP
WordPress+AMP
WordPress+JSON-LDで構造化するこれからのマークアップ WordFes Nagoya 2016
WordPress+JSON-LDで構造化するこれからのマークアップ WordFes Nagoya 2016
WordPress + JSON-LDで構造化するこれからのマークアップ
WordPress + JSON-LDで構造化するこれからのマークアップ
jQuery3.0-beta1-point
jQuery3.0-beta1-point
プラグイン公開までの道のり
プラグイン公開までの道のり
History api
History api
JSON-LD schema.org定義によるデータ構造化のススメ
JSON-LD schema.org定義によるデータ構造化のススメ
Miyazaki.js vol.2
Miyazaki.js vol.2
React Facebook JavaScript Library
React Facebook JavaScript Library
Wordpress カスタム投稿
Wordpress カスタム投稿
WordPressプラグインの作り方
WordPressプラグインの作り方
【WordBench宮崎】第3回・4回アンケート報告
【WordBench宮崎】第3回・4回アンケート報告
WordPressプラグイン考察
WordPressプラグイン考察
WordPressテーマ作成
WordPressテーマ作成
WordPress widget api
1.
© wordbonch.org WordPress Widget
API WordBench宮崎 ver.1.0.0 【WordBench宮崎勉強会】
2.
© wordbonch.org ⾃自⼰己紹介 2 ⾼高⾒見見 和也(Takami
Kazuya) Twi5er@miiitaka Facebook@miiitaka 株式会社アラタナ フロントエンドエンジニア JavaScriptと友達です。
3.
© wordbonch.org Let’s Programming
!! 3 今回は野良良プラグインを作って 実装してみます。
4.
© wordbonch.org WordPressの基本階層は以下のとおりです。⼤大きく3つのフォルダがあります。 WordPressの基本構造を理理解(主要ディレクトリ) 4 /wp-admin/ 管理理画⾯面で使⽤用するファイルあれこれがある。基本触らない。 /wp-content/ 基本、このフォルダの中をさわりましょう。 /wp-include/ WP全体で使⽤用するJSやCSS、コアファイルがある。これも基本触らない。 / ルート直下は、ログイン関連やRSS関連、コメント、トラックバック、メール送受信⽤用 のファイルなどなど
5.
© wordbonch.org wp-‐‑‒contentフォルダのさらに中のお話。 WordPressの基本構造を理理解(wp-‐‑‒contentフォルダ) 5 /wp-content/ /wp-content/language/ ⾔言語パック /wp-content/plugin/ インストールしたプラグインが保存されている場所 /wp-content/themes/ 各種テーマのテンプレートが保存されている場所 /wp-content/upgrade/ バージョンアップ時に使⽤用。 /wp-content/upload/ 管理理画⾯面からアップロードしたメディアファイルが保存されている場所。 年年→⽉月でいい感じに保存されています。
6.
© wordbonch.org 今回は/wp-‐‑‒content/plugin/にフォルダを作成してプラグインを作ります。 WordPressの基本構造を理理解(今回の主役) 6 /wp-content/ /wp-content/language/ ⾔言語パック /wp-content/plugin/ インストールしたプラグインが保存されている場所 /wp-content/themes/ 各種テーマのテンプレートが保存されている場所 /wp-content/upgrade/ バージョンアップ時に使⽤用。 /wp-content/upload/ 管理理画⾯面からアップロードしたメディアファイルが保存されている場所。 年年→⽉月でいい感じに保存されています。 widget-plugin ディレクトリを作る。
7.
© wordbonch.org 作成したディレクトリ内にディレクトリと同じ名前のPHPファイル(widget-‐‑‒plugin.php)を 作成して以下のコメントを書きます。 widget-‐‑‒plugin.phpに記述 7 <?php
/* Plugin Name: Widget API PLUGIN DescripMon: This is a study plugin Author: Kazuya Takami Version: 0.1 */ 書いたら管理理画⾯面のプラグインメニューを確認しましょう。(^o^)
8.
© wordbonch.org 何はともあれテーマを作る(外観→テーマ) 8 でた!\(^o^)/
9.
© wordbonch.org 先程のコメント欄の下に続けて以下のコードを記述します。 Widget APIの基本 9
class Widget_Plugin extends WP_Widget { public funcMon __construct() { parent::__construct( false, 'Widget Plugin Demo’ ); } public funcMon form( $instance ) { } public funcMon update( $new_instance, $old_instance ) { } public funcMon widget( $args, $instance ) { } }
10.
© wordbonch.org 先程のコメント欄の下に続けて以下のコードを記述します。 Widget APIの基本 10
class Widget_Plugin extends WP_Widget { public funcMon __construct() { parent::__construct( false, 'Widget Plugin Demo’ ); } public funcMon form( $instance ) { } public funcMon update( $new_instance, $old_instance ) { } public funcMon widget( $args, $instance ) { } } WP_Widgetクラスを継承
11.
© wordbonch.org 先程のコメント欄の下に続けて以下のコードを記述します。 Widget APIの基本 11
class Widget_Plugin extends WP_Widget { public funcMon __construct() { parent::__construct( false, ‘Widget Plugin Demo’ ); } public funcMon form( $instance ) { } public funcMon update( $new_instance, $old_instance ) { } public funcMon widget( $args, $instance ) { } } WP_Widgetクラス(スーパ ークラス)のコンストラク タ呼び出し
12.
© wordbonch.org 先程のコメント欄の下に続けて以下のコードを記述します。 Widget APIの基本 12
class Widget_Plugin extends WP_Widget { public funcMon __construct() { parent::__construct( false, 'Widget Plugin Demo’ ); } public funcMon form( $instance ) { } public funcMon update( $new_instance, $old_instance ) { } public funcMon widget( $args, $instance ) { } } 管理理画⾯面のウィジェットに ⼊入⼒力力項⽬目などを表⽰示する関数 $instance に連想配列列で 登録した項⽬目値が来る
13.
© wordbonch.org 先程のコメント欄の下に続けて以下のコードを記述します。 Widget APIの基本 13
class Widget_Plugin extends WP_Widget { public funcMon __construct() { parent::__construct( false, 'Widget Plugin Demo’ ); } public funcMon form( $instance ) { } public funcMon update( $new_instance, $old_instance ) { } public funcMon widget( $args, $instance ) { } } 管理理画⾯面のウィジェット で「保存」ボタンを押した 時に動作する関数 $new_instance が今回、 $old_instanceが前回⼊入 ⼒力力した値
14.
© wordbonch.org 先程のコメント欄の下に続けて以下のコードを記述します。 Widget APIの基本 14
class Widget_Plugin extends WP_Widget { public funcMon __construct() { parent::__construct( false, 'Widget Plugin Demo’ ); } public funcMon form( $instance ) { } public funcMon update( $new_instance, $old_instance ) { } public funcMon widget( $args, $instance ) { } } サイト側のウィジェットを 配置した場所に表⽰示される 内容を記述 $new_instance が今回、 $old_instanceが前回⼊入 ⼒力力した値
15.
© wordbonch.org 出来上がったクラスをウィジェットに登録して、フックポイント(widget_̲init)に仕掛けます。 Widget API:フックポイントの登録 15
add_acMon( 'widgets_init', funcMon () { register_widget( 'Widget_Plugin’ ); }); クラス名を登録します。 (無名関数パターン) funcMon register_widget_plugin () { register_widget( 'Widget_Plugin’ ); } add_acMon( 'widgets_init’, ‘register_widget_plugin’); 関数を作ってフックさ せるパターン。
16.
© wordbonch.org さて 16 ここまで記述したらプラグインを 有効にしてみましょう。
17.
© wordbonch.org Widget API:ウィジェット画⾯面 17
追加された!\(^o^)/
18.
© wordbonch.org Widget API:ウィジェット画⾯面 18
けどまだ何も起きない (´・ω・`)
19.
© wordbonch.org まずは初期設定 19 コンストラクタの定義
20.
© wordbonch.org スーパークラスのコンストラクタを呼び出します。 Widget API:コンストラクタの定義 20
public funcMon __construct() { $widget_opMons = array( 'descripMon' => 'This is a study plugin' ); parent::__construct( false, 'Widget Plugin Demo', $widget_opMons); }
21.
© wordbonch.org formメソッド 21 formメソッドの定義
22.
© wordbonch.org Widget API:formメソッド定義 22
public funcMon form( $instance ) { echo '<p>タイトル:'; prina( '<input type="text" id="%s" name="%s" value="%s">', $this-‐>get_field_id( 'Mtle' ), $this-‐>get_field_name( 'Mtle' ), esc_a5r( $instance['Mtle'] ) ); echo '</p>'; } public funcMon get_field_id( $field_name ) { return 'widget-‐' . $this-‐>id_base . '-‐' . $this-‐>number . '-‐' . $field_name; } widget.php ⼀一意な⽂文字列列を作成し てくれる。 public funcMon get_field_name($field_name) { return 'widget-‐' . $this-‐>id_base . '[' . $this-‐>number . '][' . $field_name . ']'; } name属性は配列列にし てくれる。すてき。
23.
© wordbonch.org Widget API:ウィジェット画⾯面確認 23
⼊入⼒力力ボックスが出た! ( ´ ▽ ` )ノ
24.
© wordbonch.org Widget API:ウィジェット画⾯面確認 24
けどまだ保存できない (´・ω・`)
25.
© wordbonch.org updateメソッド 25 updateメソッドの定義
26.
© wordbonch.org $new_̲instance に⼊入⼒力力した値が⼊入っているのでreturnするだけ。 Widget
API:updateメソッド定義 26 public funcMon update( $new_instance, $old_instance ) { return $new_instance; } これだけ!( ´ ▽ ` )ノ ⼊入⼒力力した値+何かを保存したい場合には、ここで仕掛けてあげます。 $new_̲instance[ʻ‘titleʼ’] = $new_̲instance[ʻ‘titleʼ’] . ʻ‘追加ʼ’; 的な。
27.
© wordbonch.org widgetメソッド 27 widgetメソッドの定義
28.
© wordbonch.org タイトルとコンテンツを出⼒力力するにあたって、他のwidgetと同様の構成にするようにします。 Widget API:widgetメソッド定義 28
public funcMon widget( $args, $instance ) { echo $args['before_widget']; echo $args['before_Mtle']; echo esc_html( $instance['Mtle'] ); echo $args['aher_Mtle']; echo $args['aher_widget']; } 登録した情報を出⼒力力し ます。エスケープも忘 れずに。
29.
© wordbonch.org Widget API:表⽰示確認 29
表⽰示された!( ´ ▽ ` )ノ
30.
© wordbonch.org タイトルとコンテンツを出⼒力力するにあたって、他のwidgetと同様の構成にするようにします。 Widget API:widgetメソッド定義 30
public funcMon widget( $args, $instance ) { echo $args['before_widget']; echo $args['before_Mtle']; echo esc_html( $instance['Mtle'] ); echo $args['aher_Mtle']; echo $args['aher_widget']; } 引数$argsにウィジェット共 通情報が含まれています。
31.
© wordbonch.org Widget API:widgetメソッド定義 31
public funcMon widget( $args, $instance ) { echo $args['before_widget']; echo $args['before_Mtle']; echo esc_html( $instance['Mtle'] ); echo $args['aher_Mtle']; global $post; $where = array( 'numberposts' => 5 ); $posts = get_posts( $where ); foreach( $posts as $post ) { setup_postdata($post); esc_html( the_Mtle() ); } wp_reset_postdata(); echo $args['aher_widget']; } この部分を追加しました。 投稿を表⽰示してみます。
32.
© wordbonch.org Widget API:表⽰示確認 32
表⽰示された!( ´ ▽ ` )ノ
33.
© wordbonch.org ご清聴ありがとうございました。 33 ありがとうございました。 次回は2ヶ月後の8月開催です。
34.
© wordbonch.org WordPress関数リファレンス/Widgets_API https://codex.wordpress.org/Widgets_API WordPress関数リファレンス/register_widget https://codex.wordpress.org/Function_Reference/register_widget 参考URL 34
Download now