Submit Search
Upload
WordPressプラグインの作り方
•
2 likes
•
1,138 views
Takami Kazuya
Follow
2014.07.12 WordBench宮崎第5回勉強会資料
Read less
Read more
Technology
Report
Share
Report
Share
1 of 52
Download now
Download to read offline
Recommended
Wordbeach 2011 hajimeno ippo
Wordbeach 2011 hajimeno ippo
Satoshi Kamigaki
落とし穴に落ちないためのWordPress基礎知識
落とし穴に落ちないためのWordPress基礎知識
Yoshie Nakayama
WP REST API の活用事例と今後
WP REST API の活用事例と今後
Yuusuke Yoshida
PWAを使ってWebXRコンテンツをオフラインで動くようにする手順について
PWAを使ってWebXRコンテンツをオフラインで動くようにする手順について
WheetTweet
_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門
Hidetaka Okamoto
YARAIYA! Opendata with WordPress
YARAIYA! Opendata with WordPress
Hidetaka Okamoto
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
Takashi Uemura
WordCampKansai 2015 公式ディレクトリへの テーマ掲載とビジネスモデル
WordCampKansai 2015 公式ディレクトリへの テーマ掲載とビジネスモデル
Hidekazu Ishikawa
Recommended
Wordbeach 2011 hajimeno ippo
Wordbeach 2011 hajimeno ippo
Satoshi Kamigaki
落とし穴に落ちないためのWordPress基礎知識
落とし穴に落ちないためのWordPress基礎知識
Yoshie Nakayama
WP REST API の活用事例と今後
WP REST API の活用事例と今後
Yuusuke Yoshida
PWAを使ってWebXRコンテンツをオフラインで動くようにする手順について
PWAを使ってWebXRコンテンツをオフラインで動くようにする手順について
WheetTweet
_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門
Hidetaka Okamoto
YARAIYA! Opendata with WordPress
YARAIYA! Opendata with WordPress
Hidetaka Okamoto
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
Takashi Uemura
WordCampKansai 2015 公式ディレクトリへの テーマ掲載とビジネスモデル
WordCampKansai 2015 公式ディレクトリへの テーマ掲載とビジネスモデル
Hidekazu Ishikawa
PWA aruaru
PWA aruaru
n_harada
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
Kitani Kimiya
今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイト
rie05
SPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWork
Mizuho Sakamaki
Learning from theme review requirements
Learning from theme review requirements
Shinichi Nishikawa
WordBench京都版 _sハンズオン
WordBench京都版 _sハンズオン
Hidetaka Okamoto
WordPress公式ディレクトリにテーマを登録しよう #wctokyo
WordPress公式ディレクトリにテーマを登録しよう #wctokyo
Hidekazu Ishikawa
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
Yoshinori Kobayashi
WordPressで行う継続的インテグレーション入門編
WordPressで行う継続的インテグレーション入門編
Hiroshi Urabe
XRにおけるプロトタイピングについて
XRにおけるプロトタイピングについて
WheetTweet
スキトラ Spring + mybatis
スキトラ Spring + mybatis
小川 昌吾
Word pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオン
Hidetaka Okamoto
初心者でもすぐできる Wordpress バックアップのススメ
初心者でもすぐできる Wordpress バックアップのススメ
Seiichiro Mishiba
WordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップ
Tomoyuki Sugita
Word camposaka imaigo_slideshare
Word camposaka imaigo_slideshare
Go Imai
レスポンシブ・イメージのWordPressへの実装と4.4
レスポンシブ・イメージのWordPressへの実装と4.4
Toru Miki
HTML5 アプリ開発
HTML5 アプリ開発
tomo_masakura
WordPressをこれから始める人のためのテーマ講座
WordPressをこれから始める人のためのテーマ講座
Takami Kazuya
BootstrapとRailsで、 高速にWebサイトを作ってみた
BootstrapとRailsで、 高速にWebサイトを作ってみた
BeMarble
WordCamp Haneda 2019 WordPress初心者のためのサイト運営虎の巻 #wchaneda
WordCamp Haneda 2019 WordPress初心者のためのサイト運営虎の巻 #wchaneda
Hidekazu Ishikawa
WordPressプラグイン考察
WordPressプラグイン考察
Takami Kazuya
プラグイン公開までの道のり
プラグイン公開までの道のり
Takami Kazuya
More Related Content
What's hot
PWA aruaru
PWA aruaru
n_harada
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
Kitani Kimiya
今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイト
rie05
SPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWork
Mizuho Sakamaki
Learning from theme review requirements
Learning from theme review requirements
Shinichi Nishikawa
WordBench京都版 _sハンズオン
WordBench京都版 _sハンズオン
Hidetaka Okamoto
WordPress公式ディレクトリにテーマを登録しよう #wctokyo
WordPress公式ディレクトリにテーマを登録しよう #wctokyo
Hidekazu Ishikawa
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
Yoshinori Kobayashi
WordPressで行う継続的インテグレーション入門編
WordPressで行う継続的インテグレーション入門編
Hiroshi Urabe
XRにおけるプロトタイピングについて
XRにおけるプロトタイピングについて
WheetTweet
スキトラ Spring + mybatis
スキトラ Spring + mybatis
小川 昌吾
Word pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオン
Hidetaka Okamoto
初心者でもすぐできる Wordpress バックアップのススメ
初心者でもすぐできる Wordpress バックアップのススメ
Seiichiro Mishiba
WordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップ
Tomoyuki Sugita
Word camposaka imaigo_slideshare
Word camposaka imaigo_slideshare
Go Imai
レスポンシブ・イメージのWordPressへの実装と4.4
レスポンシブ・イメージのWordPressへの実装と4.4
Toru Miki
HTML5 アプリ開発
HTML5 アプリ開発
tomo_masakura
WordPressをこれから始める人のためのテーマ講座
WordPressをこれから始める人のためのテーマ講座
Takami Kazuya
BootstrapとRailsで、 高速にWebサイトを作ってみた
BootstrapとRailsで、 高速にWebサイトを作ってみた
BeMarble
WordCamp Haneda 2019 WordPress初心者のためのサイト運営虎の巻 #wchaneda
WordCamp Haneda 2019 WordPress初心者のためのサイト運営虎の巻 #wchaneda
Hidekazu Ishikawa
What's hot
(20)
PWA aruaru
PWA aruaru
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイト
SPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWork
Learning from theme review requirements
Learning from theme review requirements
WordBench京都版 _sハンズオン
WordBench京都版 _sハンズオン
WordPress公式ディレクトリにテーマを登録しよう #wctokyo
WordPress公式ディレクトリにテーマを登録しよう #wctokyo
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
WordPressで行う継続的インテグレーション入門編
WordPressで行う継続的インテグレーション入門編
XRにおけるプロトタイピングについて
XRにおけるプロトタイピングについて
スキトラ Spring + mybatis
スキトラ Spring + mybatis
Word pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオン
初心者でもすぐできる Wordpress バックアップのススメ
初心者でもすぐできる Wordpress バックアップのススメ
WordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップ
Word camposaka imaigo_slideshare
Word camposaka imaigo_slideshare
レスポンシブ・イメージのWordPressへの実装と4.4
レスポンシブ・イメージのWordPressへの実装と4.4
HTML5 アプリ開発
HTML5 アプリ開発
WordPressをこれから始める人のためのテーマ講座
WordPressをこれから始める人のためのテーマ講座
BootstrapとRailsで、 高速にWebサイトを作ってみた
BootstrapとRailsで、 高速にWebサイトを作ってみた
WordCamp Haneda 2019 WordPress初心者のためのサイト運営虎の巻 #wchaneda
WordCamp Haneda 2019 WordPress初心者のためのサイト運営虎の巻 #wchaneda
Similar to WordPressプラグインの作り方
WordPressプラグイン考察
WordPressプラグイン考察
Takami Kazuya
プラグイン公開までの道のり
プラグイン公開までの道のり
Takami Kazuya
WordPress とコミュニティについて
WordPress とコミュニティについて
Yasuhiro Nozue
WordPressのローカル開発環境構築【WordBench Nagoya 5月度勉強会】
WordPressのローカル開発環境構築【WordBench Nagoya 5月度勉強会】
masaya yamao
2018 06-09 WordBenchNagoya
2018 06-09 WordBenchNagoya
Yasuhiro Nozue
WordPressテーマ作成
WordPressテーマ作成
Takami Kazuya
初学者にJavaScriptを教えてみた
初学者にJavaScriptを教えてみた
彰 村地
ローカルでのWordPress開発環境に向けて【WordBench 三重 5月度勉強会】
ローカルでのWordPress開発環境に向けて【WordBench 三重 5月度勉強会】
masaya yamao
WordCampでコントリビュータデイに参加しよう!
WordCampでコントリビュータデイに参加しよう!
Daisuke Takahashi
WordBench宮崎の取組
WordBench宮崎の取組
大司 中神
このべん第5回 ConoHaでWordPressのお勉強!
このべん第5回 ConoHaでWordPressのお勉強!
Hironobu Saitoh
最近の気になるニュース
最近の気になるニュース
Yasuhiro Nozue
WordPressをCMSとして利用するために便利なWP SiteManagerについて
WordPressをCMSとして利用するために便利なWP SiteManagerについて
Tsuyoshi.
2019 6-22 WordPress ver 5.1 - 5.2 機能おさらい
2019 6-22 WordPress ver 5.1 - 5.2 機能おさらい
Yasuhiro Nozue
日本語フォーラムで回答してみよう!~誰でも出来るWordPressへの貢献〜
日本語フォーラムで回答してみよう!~誰でも出来るWordPressへの貢献〜
Kazue Igarashi
実録 情熱と苦悩のテーマ・プラグインビジネス
実録 情熱と苦悩のテーマ・プラグインビジネス
Hidekazu Ishikawa
BizVektorに見る汎用テンプレートの設計思想
BizVektorに見る汎用テンプレートの設計思想
Hidekazu Ishikawa
20140214 さくらインターネットハンズオン@大阪 WordPressを始めよう
20140214 さくらインターネットハンズオン@大阪 WordPressを始めよう
Takashi Uemura
初心者からのWordPressセキュリティ対策
初心者からのWordPressセキュリティ対策
Endoh Shingo
いまさら聞けない WordPress 情報の在り処
いまさら聞けない WordPress 情報の在り処
Odyssey Eightbit
Similar to WordPressプラグインの作り方
(20)
WordPressプラグイン考察
WordPressプラグイン考察
プラグイン公開までの道のり
プラグイン公開までの道のり
WordPress とコミュニティについて
WordPress とコミュニティについて
WordPressのローカル開発環境構築【WordBench Nagoya 5月度勉強会】
WordPressのローカル開発環境構築【WordBench Nagoya 5月度勉強会】
2018 06-09 WordBenchNagoya
2018 06-09 WordBenchNagoya
WordPressテーマ作成
WordPressテーマ作成
初学者にJavaScriptを教えてみた
初学者にJavaScriptを教えてみた
ローカルでのWordPress開発環境に向けて【WordBench 三重 5月度勉強会】
ローカルでのWordPress開発環境に向けて【WordBench 三重 5月度勉強会】
WordCampでコントリビュータデイに参加しよう!
WordCampでコントリビュータデイに参加しよう!
WordBench宮崎の取組
WordBench宮崎の取組
このべん第5回 ConoHaでWordPressのお勉強!
このべん第5回 ConoHaでWordPressのお勉強!
最近の気になるニュース
最近の気になるニュース
WordPressをCMSとして利用するために便利なWP SiteManagerについて
WordPressをCMSとして利用するために便利なWP SiteManagerについて
2019 6-22 WordPress ver 5.1 - 5.2 機能おさらい
2019 6-22 WordPress ver 5.1 - 5.2 機能おさらい
日本語フォーラムで回答してみよう!~誰でも出来るWordPressへの貢献〜
日本語フォーラムで回答してみよう!~誰でも出来るWordPressへの貢献〜
実録 情熱と苦悩のテーマ・プラグインビジネス
実録 情熱と苦悩のテーマ・プラグインビジネス
BizVektorに見る汎用テンプレートの設計思想
BizVektorに見る汎用テンプレートの設計思想
20140214 さくらインターネットハンズオン@大阪 WordPressを始めよう
20140214 さくらインターネットハンズオン@大阪 WordPressを始めよう
初心者からのWordPressセキュリティ対策
初心者からのWordPressセキュリティ対策
いまさら聞けない WordPress 情報の在り処
いまさら聞けない WordPress 情報の在り処
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+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
History api
History api
Takami Kazuya
JSON-LD schema.org定義によるデータ構造化のススメ
JSON-LD schema.org定義によるデータ構造化のススメ
Takami Kazuya
WordPress widget api
WordPress widget api
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
【WordBench宮崎】第3回・4回アンケート報告
【WordBench宮崎】第3回・4回アンケート報告
Takami Kazuya
WordPress×jQueryMobile
WordPress×jQueryMobile
Takami Kazuya
EC-CUBEプラグイン制作のポイント
EC-CUBEプラグイン制作のポイント
Takami Kazuya
今から学ぶ!jQuery Mobile!
今から学ぶ!jQuery Mobile!
Takami Kazuya
英語でカゴラボ紹介
英語でカゴラボ紹介
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+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定義によるデータ構造化のススメ
WordPress widget api
WordPress widget api
Miyazaki.js vol.2
Miyazaki.js vol.2
React Facebook JavaScript Library
React Facebook JavaScript Library
Wordpress カスタム投稿
Wordpress カスタム投稿
【WordBench宮崎】第3回・4回アンケート報告
【WordBench宮崎】第3回・4回アンケート報告
WordPress×jQueryMobile
WordPress×jQueryMobile
EC-CUBEプラグイン制作のポイント
EC-CUBEプラグイン制作のポイント
今から学ぶ!jQuery Mobile!
今から学ぶ!jQuery Mobile!
英語でカゴラボ紹介
英語でカゴラボ紹介
Recently uploaded
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Recently uploaded
(10)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
WordPressプラグインの作り方
1.
© wordbonch.org WordPress プラグインの作り方 WordBench宮崎 ver.1.0.0【WordBench宮崎勉強会】
2.
© wordbonch.org 自己紹介 1 高見 和也(Takami
Kazuya) Twitter@miiitaka Facebook@miiitaka 株式会社アラタナ フロントエンドエンジニア PHPやJavaScriptとかスクリプト系言語好き。
3.
© wordbonch.org ハッシュタグ 2 高見 和也(Takami
Kazuya) Twitter@miiitaka Facebook@miiitaka #wbmiyazaki
4.
© wordbonch.org まずは基本 3 WordPressのプラグイン基礎知識 (説明内容はWordPress3.9ベースです)
5.
© wordbonch.org プラグインとフックポイント 4 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Author :
Takami Copyright © Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) WordPressには沢山のフックポイント (Hook Point)が準備されています。
6.
© wordbonch.org フック(プログラミング) フック(Hook)は、プログラム中の特定の箇所に、利用者が独 自の処理を追加できるようにする仕組みである。また、フックを 利用して独自の処理を追加することを「フックする」という。 処理を追加できる箇所は、元のプログラムの開発者によって、あ らかじめ決められている。初期化処理や入出力処理などの直前・ 直後が対象としてよく選ばれる。 プラグインとフックポイント 5 wikipediaより出展
7.
© wordbonch.org プラグインとフックポイント 6 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Author :
Takami Copyright © Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) 例えば、投稿記事のページが左図のよう な構成で出来上がっているとします。
8.
© wordbonch.org プラグインとフックポイント 7 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Author :
Takami Copyright © Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) 記事のタイトルが表示されたら 投稿日が表示されたら 記事の内容が表示されたら 投稿者の名前が表示されたら 例えば、投稿記事のページが左図のよう な構成で出来上がっているとします。
9.
© wordbonch.org プラグインとフックポイント 8 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Author :
Takami Copyright © Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) the_title(); the_date(); the_content(); the_author(); WordPressで表示する場合
10.
© wordbonch.org プラグインとフックポイント 9 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Author :
Takami Copyright © Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) the_title(); the_date(); the_content(); the_author(); WordPressで表示する場合 この処理の中でフック ポイントが設定されて います。
11.
© wordbonch.org プラグインは フックポイントが設定されている 処理が発生した時に WordPressに何らかの処理(機能) を追加します。 プラグインとフックポイント 10
12.
© wordbonch.org プラグインの構想 11 作成するプラグインの構想 (説明内容はWordPress3.9ベースです)
13.
© wordbonch.org SNSボタン(今回はTwitter)を実装 プラグインの構想 12 ・投稿記事が表示された後に表示する。 ・管理画面からボタンの形式を変更できる。 https://dev.twitter.com/docs/tweet-button
14.
© wordbonch.org プラグインの構想 13 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Copyright ©
Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) the_content(); 投稿記事表示後にボタン表示 この処理の後にTwitter ボタンを表示します。 こんな感じで表示
15.
© wordbonch.org プラグインのファイル構成 14 プラグインの基本ファイル作成 (説明内容はWordPress3.9ベースです)
16.
© wordbonch.org WordPressの基本階層は以下のとおりです。大きく3つのフォルダがあります。 プラグインのファイル構成 15 /wp-admin/ 管理画面で使用するファイルあれこれがある。基本触らない。 /wp-content/ 基本、このフォルダの中をさわりましょう。 /wp-include/ WP全体で使用するJSやCSS、コアファイルがある。これも基本触らない。 / ルート直下は、ログイン関連やRSS関連、コメント、トラックバック、メール送受信用の ファイルなどなど
17.
© wordbonch.org wp-contentフォルダのさらに中のお話。 プラグインのファイル構成 16 /wp-content/ /wp-content/language/ 言語パック /wp-content/plugin/ インストールしたプラグインが保存されている場所 /wp-content/themes/ 各種テーマのテンプレートが保存されている場所 /wp-content/upgrade/ バージョンアップ時に使用。 /wp-content/upload/ 管理画面からアップロードしたメディアファイルが保存されている場所。 年→月でいい感じに保存されています。
18.
© wordbonch.org 今回は/wp-content/plugin/が主役です。 プラグインのファイル構成 17 /wp-content/ /wp-content/language/ 言語パック /wp-content/plugin/ インストールしたプラグインが保存されている場所 /wp-content/themes/ 各種テーマのテンプレートが保存されている場所 /wp-content/upgrade/ バージョンアップ時に使用。 /wp-content/upload/ 管理画面からアップロードしたメディアファイルが保存されている場所。 年→月でいい感じに保存されています。 この中にプラグイン毎 にディレクトリが作成 されます。
19.
© wordbonch.org プラグイン作成に必要なディレクトリ/ファイルの準備をします。 プラグインのファイル構成 18 /wp-content/ /wp-content/plugin/sns-button-plugin/sns-button-plugin.php pluginディレクトリに 任意の名前でディレク トリ作成 pluginディレクトリに 任意の名前でディレク トリ作成
20.
© wordbonch.org プラグインのメタ情報を記述します。 プラグインのファイル構成 19 /wp-content/ /wp-content/plugin/sns-button-plugin/sns-button-plugin.php このファイルの先頭に プラグインのメタ情報 を記述します。
21.
© wordbonch.org <?php /* Plugin Name:
SNS Button Plugin Description: Twitterのボタンを表示するプラグイン Author: Kazuya Takami Version: 1.0 Author URI: http://programp.com/ */ プラグインのメタ情報を記述します。 プラグインのファイル構成 20 /wp-content/ /wp-content/plugin/sns-button-plugin/sns-button-plugin.php このメタ情報でプラグ インを認識します。
22.
© wordbonch.org <?php /* Plugin Name:
SNS Button Plugin Description: Twitterのボタンを表示するプラグイン Author: Kazuya Takami Version: 1.0 Author URI: http://programp.com/ */ 管理画面に出てきた! プラグインのファイル構成 21 Plugin Name Description Author Authro URI Version
23.
© wordbonch.org <?php /* Plugin Name:
SNS Button Plugin Description: Twitterのボタンを表示するプラグイン Author: Kazuya Takami Version: 1.0 Author URI: http://programp.com/ */ 管理画面に出てきた! プラグインのファイル構成 22 「有効化」を押すとsns-button-plugin.php内 に記述した処理が動き出すが、まだ何も記 述していないので何も起きません。
24.
© wordbonch.org 投稿記事にフック 23 プラグインで投稿記事にフック (説明内容はWordPress3.9ベースです)
25.
© wordbonch.org 24 WordBench宮崎 宮崎のWordPress大好きな人たちのためのコミュニティ WordBench宮崎の取組について WordPress,勉強会 2014.07.12 WordBench宮崎は2ヶ月に1回のペース で勉強会を開催しています。 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxx Copyright
© Miyazaki WordBench アーカイブ 2014.01(1) 2014.03(1) 2014.05(1) 2014.07(1) カテゴリー 勉強会(4) the_content(); プラグインの仕様時に決めた、投稿記事 表示後にボタン表示することにします。 この処理の後にTwitter ボタンを表示します。 こんな感じで表示 ということはこの処理 をフックして機能を追 加します。 投稿記事にフック
26.
© wordbonch.org function the_content(
$more_link_text = null, $strip_teaser = false) { $content = get_the_content( $more_link_text, $strip_teaser ); $content = apply_filters( 'the_content', $content ); $content = str_replace( ']]>', ']]>', $content ); echo $content; } /wp-include/post-template.php に処理が記述してあります。(コメント省略) 投稿記事にフック 25 1 2 3 4 5 6 7 2行目のget_the_content()で投稿記事本文を 取得し、$content 変数に保存。
27.
© wordbonch.org function the_content(
$more_link_text = null, $strip_teaser = false) { $content = get_the_content( $more_link_text, $strip_teaser ); $content = apply_filters( 'the_content', $content ); $content = str_replace( ']]>', ']]>', $content ); echo $content; } /wp-include/post-template.php に処理が記述してあります。(コメント省略) 26 1 2 3 4 5 6 7 apply_filters()がポイント。 フックポイントの名前が、the_content、 引数が投稿記事のデータ、$content となり ます。 投稿記事にフック
28.
© wordbonch.org function sns_button_filter($content)
{ $str = ''; $str .= '<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-count="vertical">Tweet</a>'; $str .= '<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s );js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertB efore(js,fjs);}}(document,"script","twitter-wjs");</script>'; return $content . $str; } add_filter('the_content', 'sns_button_filter'); sns-button-plugin.php に戻ってまず、関数を準備します。 27 https://dev.twitter.com/docs/tweet-button Twitterで発行した タグを変数に保存 投稿記事にフック
29.
© wordbonch.org function sns_button_filter($content)
{ $str = ''; $str .= '<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-count="vertical">Tweet</a>'; $str .= '<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s );js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertB efore(js,fjs);}}(document,"script","twitter-wjs");</script>'; return $content . $str; } add_filter('the_content', 'sns_button_filter'); sns_button_filter() 関数をadd_filter() 関数で設定します。 28 https://dev.twitter.com/docs/tweet-button 投稿記事にフック
30.
© wordbonch.org 29 管理画面で「有効化」 を押します。 投稿記事にフック
31.
© wordbonch.org 30 「有効化」状態 でた!\(^o^)/ 投稿記事にフック
32.
© wordbonch.org アクションフック(add_action()) 基本的に既存の処理を変更できない。 何からのアクションの前後に処理を追加する場合に用いる。 31 フィルターフック(add_filter()) 基本的に処理の追加ができない。 既存の処理に対して処理を変更する場合に用いる。 投稿記事にフック
33.
© wordbonch.org function add_action($tag,
$function_to_add, $priority = 10, $accepted_args = 1) { return add_filter($tag, $function_to_add, $priority, $accepted_args); } add_action() 関数の中身を見ると... 32 結局の所、add_filter() を返しているので、 同じ処理をやっている模様。 今後、何か使い分けがでるのか?とりあえず add_filter() を使っておけば問題なさそう。 フィルターフック(add_filter()) 基本的に処理の追加ができない。 既存の処理に対して処理を変更する場合に用いる。 投稿記事にフック
34.
© wordbonch.org 33 プラグインで管理画面にフック (説明内容はWordPress3.9ベースです) プラグインで管理画面にフック
35.
© wordbonch.org プラグインで管理画面にフック 34 設定メニューの中の フックポイントに仕掛ける 管理画面の「設定」メニュー内にプラグイン用のメニュー を追加します。
36.
© wordbonch.org プラグインで管理画面にフック 35 まず、メニューをクリックしたときに表示する画面。 とりあえずタイトルを表示するだけの関数を準備。(sns-button-plugin.phpに追記) function sns_button_option_set()
{ echo '<h2>SNS Button 設定画面</h2>'; }
37.
© wordbonch.org プラグインで管理画面にフック 36 次に設定メニュー内に項目を追加。 add_options_page() 関数を使用して追加します。 function
sns_button_option_set() { echo '<h2>SNS Button 設定画面</h2>'; } function sns_button_option_menu() { add_options_page( 'SNS Button', 'SNS Button Option', 'manage_options', __FILE__, 'sns_button_option_set' ); }
38.
© wordbonch.org プラグインで管理画面にフック 37 add_options_page() 関数を解説 add_options_page( ‘SNS
Button’, 'SNS Button Option', 'manage_options', __FILE__, 'sns_button_option_set' ); ■第一引数 ページのタイトル(titleタグ)に表示する文字列(任意) ■第二引数 メニューに表示する文字列(任意) ■第三引数 サブメニューの権限 ※ここを数値で指定している情報もありますが、WordPress2.0か ら非推奨になっていますので、権限名で指定します。 ■第四引数 サブメニューのスラッグ(URLのpage=??? の??? 部分) ■第五引数 サブメニューページのコールバック関数
39.
© wordbonch.org プラグインで管理画面にフック 38 最後に、add_filter() でフックポイントを指定して関数を呼び出す。 function
sns_button_option_set() { echo '<h2>SNS Button 設定画面</h2>'; } function sns_button_option_menu() { add_options_page( 'SNS Button', 'SNS Button Option', 'manage_options', __FILE__, 'sns_button_option_set' ); } add_filter('admin_menu', 'sns_button_option_menu'); 管理画面のメニューにフッ クするフィルター名
40.
© wordbonch.org プラグインで管理画面にフック 39 でた!\(^o^)/ でた!\(^o^)/ sns_button_option_set()関数で表 示した内容
41.
© wordbonch.org 情報の保存・更新 40 情報の保存・更新 (説明内容はWordPress3.9ベースです)
42.
© wordbonch.org 情報の保存・更新 41 Twitterのdata-countの表示方法を変えれるようにプルダウンで選択できるようにします。 function sns_button_option_set()
{ if (isset($_POST['displaysas'])) { update_option('sns_button_option_displaysas', esc_html($_POST['displaysas'])); } echo <<< EOF <h2>SNS Button 設定画面</h2> <form action="" method="POST"> 表示形式: <select name="displaysas"> <option value="none">標準</option> <option value="horizontal">水平方向にカウント吹き出し</option> <option value="vertical">垂直方向にカウント吹き出し</option> </select> <p><input type="submit" value="更新"></p> </form> EOF; } この値をPOST
43.
© wordbonch.org 情報の保存・更新 42 DBに保存されます。wp_options テーブルに保存されたことが確認できます。 selectタグの name属性で指 定した文字列 optionタグの valeu属性で指定 した文字列
44.
© wordbonch.org 情報の保存・更新 43 保存された情報 この3タイプを設定で出 し分けるために、この文 字列を保存します。
45.
© wordbonch.org function sns_button_filter($content)
{ $str = ''; $str .= '<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-count="vertical">Tweet</a>'; $str .= '<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s );js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertB efore(js,fjs);}}(document,"script","twitter-wjs");</script>'; return $content . $str; } add_filter('the_content', 'sns_button_filter'); sns_button_filter() 関数内で保存した情報を呼び出します。 情報の保存・更新 44 この値を保存した情報に 置き換えます。
46.
© wordbonch.org function sns_button_filter($content)
{ $displayas = get_option('sns_button_option_displaysas'); $str = ''; $str .= '<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-count="vertical">Tweet</a>'; $str .= '<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s );js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertB efore(js,fjs);}}(document,"script","twitter-wjs");</script>'; return $content . $str; } add_filter('the_content', 'sns_button_filter'); sns_button_filter() 関数内で保存した情報を呼び出します。 情報の保存・更新 45 保存した情報をRead。 option_nameを指定します。
47.
© wordbonch.org function sns_button_filter($content)
{ $displayas = get_option('sns_button_option_displaysas'); $str = ''; $str .= '<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-count="' . esc_attr($displayas) . '">Tweet</a>'; $str .= '<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s );js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertB efore(js,fjs);}}(document,"script","twitter-wjs");</script>'; return $content . $str; } add_filter('the_content', 'sns_button_filter'); sns_button_filter() 関数内で保存した情報を呼び出します。 情報の保存・更新 46 変数に取得した値をセット
48.
© wordbonch.org 情報の保存・更新 47 かわった! \(^o^)/ 「水平方向にカウント吹き出し」 (horizontal)で更新
49.
© wordbonch.org まとめ 48 まとめ
50.
© wordbonch.org • フックポイントは、apply_filter()
を定義しているところなので探せば沢山ある。 • フックさせるには、add_action() / add_filter() でフックさせる。 • フックさせた後の動作を関数でまとめる。 • フックポイントによって引数も異なるので、ソースコードを見てみる。 まとめ 49
51.
© wordbonch.org ご清聴ありがとうございました。 50 ありがとうございました。 次回は2ヶ月後の9月開催です。
52.
© wordbonch.org Codex日本語版:プラグイン作成 http://wpdocs.sourceforge.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83% B3%E3%81%AE%E4%BD%9C%E6%88%90 Codex日本語版:ユーザーの種類と権限 http://wpdocs.sourceforge.jp/%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81% AE%E7%A8%AE%E9%A1%9E%E3%81%A8%E6%A8%A9%E9%99%90 参考URL 51
Download now