SlideShare a Scribd company logo
NetBeans Plugin for
     WordPress
for members of WordBench Fukuoka
           @junichi_11
はじめに

● WordPress用のプラグインはまだ十分な機能
 はないので、期待してインストールされた方には
 申し訳ないです
● こんなのあればいいのにと思いましたら、
 @junichi_11宛にリプライ飛ばしてもらえると、
 出来る限りやってみます
NetBeansのインストール

● 公式サイトからNetBeans7.3をダウンロード
 http://netbeans.org/downloads/index.html
● 7.2以前のものでは動作しません
● 全部入っていても、PHPだけでもOK(のはず?)
WordPressプラグイン

● ソースコード(github)
 https://github.com/junichi11/netbeans-wordpress-plugin
● ライセンス (NetBeans本体と同じ)
 Common Development and Distribution License (CDDL) v1.0 and GNU
 General Public License (GPL) v2

● 更新情報はREADME.mdを参照
WordPressプラグインのインストール1

● Plugin Portalからダウンロード
  http://plugins.netbeans.org/plugin/46542/php-wordpress-blog-cms

● ファイル名:てんてんぷるぷる.nbm
● NetBeansからは直接インストールできません
● NetBeans 8.0 or NetBeans 7.3.1で登録予定
  (今でも登録することは可能ですが、ビルドバー
  ジョンに依存するので、インストールできない言
  語があるためです。)
WordPressプラグインのインストール2

● ツール > オプション > プラグイン > ダウンロー
 ド済み > プラグインの追加 > nbmファイルを選
 択
プラグインの機能1

● 新規WordPressプロジェクトの作成
● Badge Iconの表示
● 重要なファイルフォルダ
● コードテンプレート
● Zip圧縮アクション(ThemeとPluginのみ)
● デバッグステータスの表示と変更
プラグインの機能2

● themesとpluginsへのショートカット
● filterとactionの関数に関するコード補完
● filterとactionの関数に関するハイパーリンク
● 新規テーマ作成アクション(Underscore)
● テンプレートファイル
プラグインの機能3

● コード補完ファイルリフレッシュアクション
 (filterとactionに関する補完ファイルをカスタマ
 イズした時の機能です。まだ詳しい説明をどこ
 にも書いていません)
新規WordPressプロジェクトの作成

● WordPressサイトからのDL&展開
 (日本語環境であればデフォルトで、日本語サイ
 トのlatest.zip)
● ローカルファイルの展開
 (デフォルトは何も設定されていません)
● これらのパスはオプションの設定で指定できま
 す
オプションの設定

● ツール > オプション > PHP > WordPress
新規WordPressプロジェクトの作成

1. プロジェクトを選択(ファイル > 新規プロジェクト
 > PHP > PHPアプリケーション)
2. 名前と場所(プロジェクト名などを設定する)
3. 実行構成(実行方法など)
4. PHPフレームワーク
 (WordPress PHP Web Blog/CMS)
新規プロジェクトの作成
新規プロジェクトの作成

● URLなのかローカルファイルなのか選択
  (ローカルファイルの方が展開は速いです)
● Set format to project
  (プロジェクトプロパティにフォーマットを設定)
● create wp-config.php
  (右側の設定内容のファイルを作成)
● 終了を押下
Badge Iconの表示

● プロジェクトの右上にアイコンが表示されます
● javascriptエディタのバグによりエラーアイコン
 が表示されています(バグレポート済:未解決)
重要なファイルフォルダ
themes,pluginsショートカット

● wp-config.phpは重要なファイルに入っていま
 す
コードテンプレート

● オプション > エディタ > コード・テンプレート
プラグインで用意したテンプレートを挿入できます
● wpgpl (GPLライセンス表記)
● wpph (プラグインヘッダ)
● 使い方は wpgpl[Tab] , wpph[Tab]
Zip圧縮アクション

● themes, pluginsの中のフォルダをzip圧縮
● zip化したいノードで右クリック
 > WordPress Zip compress
● 圧縮場所はthemes/, plugin/直下
 e.g. themes/myplugin.zip
● NetBeans本体にもZip化する機能があるので、
 場所を指定したい場合はそちらをどうぞ
デバッグステータスの表示と変更

● wp-config.php内のDEBUG値をステータス
 バー(画面の右下)に表示
● クリックすることで変更可能
filter, actionに関するコード補完

● add_filter('name', 'function_name');
● remove_filter(),add_action(),
  remove_action()
第1,2引数の補完候補を表示します
公式サイトのドキュメントをxmlにしているので、そ
こに載っているもの以外は表示されません
filter, actionに関するコード補完

● add_filter('[Ctrl + Space]', 'w[Ctrl + Space]');
● 上記のように、クォーテーション内で補完を実行
● 先頭を少しタイプすると候補が絞られます
● 引数が配列の場合は補完不可能です
filter, actionに関するコード補完
filter, actionに関するパイパーリンク

● フィルタ名と同名の関数があればそこに移動
● Ctrlを押したままフィルタ名をクリック
● 関数名も同様
新規テーマ作成アクション(Underscores)

● Underscoresのテーマを作成します
● プロジェクト右クリック > WordPress > Create
  Theme(_s)
新規テーマ作成アクション
なぜUnderscores?

● 公開されているテンプレートをさがしましたが、
 見つけたのがこれだけでした
● 人によって違うと思うので、zipファイルを指定で
 きるような機能にしようと思います
テンプレートファイル

● 新規ファイルの作成時に、WordPress用のテン
 プレートファイルを選択することができます
● 新規 > その他 > WordPress
テンプレートファイル
コード補完リフレッシュアクション

● プロジェクト 右クリック > WordPress > Code
 Completion Refresh
● 通常は何も起きません
● nbprojectフォルダに指定した形式と名前のxml
 ファイルがあるとコード補完時にそちらを読み込
 みます
コード補完リフレッシュアクション

● code-completion-action.xml
<codecompletion>
    <actions>
         <action category="">
              <name>hoge_moge</name>
              <description>hogemoge</description>
         </action>
    </actions>
</codecompletion>
https://gist.github.com/junichi11/5107917#file-code_completion_action-
xml
コード補完リフレッシュアクション

● code-completion-filter.xml
<codecompletion>
    <filters>
          <filter category="">
                <name>hoge_moge</name>
                <description>hogemoge</description>
          </filter>
    </filters>
</codecompletion>
https://gist.github.com/junichi11/5107917#file-code_completion_filter-xml
コード補完リフレッシュアクション

● プロジェクトを開くときに入っていれば、このアク
 ションを実行する必要はありません
● gistにデフォルトのテンプレートを置いておきま
 す
● xmlでactions,actionなどを使うのではなくて、
 entries, entryにすべきでしたが、そのままなの
 でいつか変更するかもしれません
コード補完リフレッシュアクション
Tips ハイパーリンクについて

● ハイパーリンクの機能はNetBeansの一般的な
 機能なので活用すると便利です
● 関数や変数の宣言に移動することができます
● 方法は同じで Ctrl + クリック
● キャレット位置の関数等の宣言へ移動は

  Ctrl + B
Tips コード補完について

● PHPDocを書くことによりIDEが型を認識します
● 補完候補を出したい場合はPHPDocを書きま
 しょう
● function宣言のすぐ上の行で/**とタイプしてエン
 ターを押せば自動的に@paramなどが作成され
 ます
Tips コード補完について

● @global
● @property
● @var
● @return
これらのタグを使うことにより、更に補完が効くよう
になります
Tips コード補完について
@global
/**
 * hoge
 * @global $wpdb wpdb
 */
function hoge() {
    global $wpdb;
    //$wpdb->[Ctrl + Space]
}
Tips コード補完について
@var
関数外の変数に対して補完候補をだすには次の
ようなコメントを書きましょう
/* @var $wpdb wpdb */
$wpdb->[Ctrl + Space]
Tips コード補完について
@property
クラスのフィールドを補完
/**
 * @property $Post Post
 */
class Foo {
    public function foo(){
      $this->Post->[Ctrl + Space]
    }
}
Tips コード補完について
@return
戻り値に対する補完
/**
 * @return Post
 */
public function bar() {
}
MyClass::bar()->[Ctrl + Space]
非公式のコミュニティの紹介
NetBeans PHP Community Council
● このコミュニティは何?
 公式でサポートされてないものをプラグインやド
 キュメントを作ってサポートしようじゃないかとい
 う集まりです
● 興味があれば下記を参照してください
 http://nbphpcouncil.org/
NetBeans PHP Community Council
● 今はYii Frameworkのサポートをしています
● 公式でなかなかサポートしてくれない機能等を
 サポートするように動いてくれるはずなので、こ
 のフレームワークのサポート頼むー、PHPに関
 するこんな機能がほしい!などがあれば投げて
 みましょう
最後に

● バグを発見した場合は、NetBeansのbugzillaで
 はなく、github issueまたは@junichi_11までお
 願いします
● 要望等も同じです
Thanks for Reading!



                          @junichi_11
ねこび〜ん by カネウチカズコ is licensed under a Creative Commons 表示-継承 2.1 日本 License.

More Related Content

PDF
8時間耐久PHPUnitの教室
PDF
PHPUnit でテスト駆動開発を始めよう
PPTX
あるあるLT〜サーバーサイドエンジニア〜 Vol.3
PPTX
Behat Driven Development
PPTX
Clrh 111015 wf45
PDF
実"戦"CakePHP Plugin
PDF
NetBeans、FuelPHP と過ごしたこの 2 ヶ月
PDF
Prefectに関して imperfectに語る
8時間耐久PHPUnitの教室
PHPUnit でテスト駆動開発を始めよう
あるあるLT〜サーバーサイドエンジニア〜 Vol.3
Behat Driven Development
Clrh 111015 wf45
実"戦"CakePHP Plugin
NetBeans、FuelPHP と過ごしたこの 2 ヶ月
Prefectに関して imperfectに語る

What's hot (20)

PDF
よりよいPHPUnitの実行方法を求めて
PPT
How to manage Cakephp @CakePHP_Fukuoka_2
KEY
最近、僕がハマったFuelPHPの紹介
PDF
20091030cakephphandson 01
PDF
PHP勉強会 #51
PDF
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
PDF
PHPの今とこれから2015
PDF
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
PDF
Cake php + php unitによる実践的ユニットテスト
PDF
Getting Started with Testing using PHPUnit
PDF
concrete5デザインカスタマイズに必要なPHPの知識
PPTX
PPTX
FuelPHP - フレームワーク4本勝負 @PHPカンファレンス関西2014
PDF
はじめてのCodeIgniter
PDF
Introduction to Continuous Test Runner MakeGood
PPT
Php+Word Press
PDF
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
PPTX
Geeklog2.1新機能紹介 20140723
KEY
php-timecopを実戦投入してみた
PDF
FuelPHP Osu Nagoya vol.1
よりよいPHPUnitの実行方法を求めて
How to manage Cakephp @CakePHP_Fukuoka_2
最近、僕がハマったFuelPHPの紹介
20091030cakephphandson 01
PHP勉強会 #51
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
PHPの今とこれから2015
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
Cake php + php unitによる実践的ユニットテスト
Getting Started with Testing using PHPUnit
concrete5デザインカスタマイズに必要なPHPの知識
FuelPHP - フレームワーク4本勝負 @PHPカンファレンス関西2014
はじめてのCodeIgniter
Introduction to Continuous Test Runner MakeGood
Php+Word Press
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
Geeklog2.1新機能紹介 20140723
php-timecopを実戦投入してみた
FuelPHP Osu Nagoya vol.1
Ad

Viewers also liked (15)

PDF
Contact form 7レイアウト編集
PDF
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
PDF
WordCamp Tokyo 2016から WordCamp Tokyo 2017へ
PDF
Contact Form 7 よくあるカスタマイズ
PDF
WordBench 東京 とは
PDF
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
PDF
デザイナーとプログラマーの72時間戦争 〜 キタジマタカシ対抗 ver. 〜
PDF
WordPress公式テーマ登録のための5ステップ
PDF
ノンプログラマーのためのカンタンWordPressテーマ作成入門 ∼子テーマで WordPress のテーマをつくろう∼
PDF
ノンプログラマーのためのカンタンWordPressテーマ作成入門 〜子テーマでテーマ作成&カスタマイズ〜
PDF
ノンプログラミングWebデザイナーがWordPressをおぼえるためにやったこと 〜巨人の肩にのってみた!〜
PDF
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
PDF
デザイナーとエンジニアの境界線 〜 Are you a Designer or an Engineer? 〜
PDF
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
PDF
ズルいLT 〜はじめてのライトニングトーク〜 / WP-D Week
Contact form 7レイアウト編集
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
WordCamp Tokyo 2016から WordCamp Tokyo 2017へ
Contact Form 7 よくあるカスタマイズ
WordBench 東京 とは
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
デザイナーとプログラマーの72時間戦争 〜 キタジマタカシ対抗 ver. 〜
WordPress公式テーマ登録のための5ステップ
ノンプログラマーのためのカンタンWordPressテーマ作成入門 ∼子テーマで WordPress のテーマをつくろう∼
ノンプログラマーのためのカンタンWordPressテーマ作成入門 〜子テーマでテーマ作成&カスタマイズ〜
ノンプログラミングWebデザイナーがWordPressをおぼえるためにやったこと 〜巨人の肩にのってみた!〜
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
デザイナーとエンジニアの境界線 〜 Are you a Designer or an Engineer? 〜
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
ズルいLT 〜はじめてのライトニングトーク〜 / WP-D Week
Ad

Similar to NetBeans plugin for wordpress (20)

PDF
CodeIgniter東京勉強会 2011.05.14
PDF
NetBeansではじめる FuelPHP
PDF
はこだてIKA夜間勉強会 バージョン管理#01 -Subversion編-
PDF
バージョン管理#01 -Subversion編-
PDF
WordPress を使いこなそう
PDF
WordCampOsaka2012 開発ツール談義「NetBeans」
PDF
Net commonsアドオンモジュールセミナー第4回小ネタ集
KEY
WordPress中級者への道!テンプレートタグはどう動くのか!?
PDF
WordCamp Kansai 2015 CI ハンズオン
PDF
Tdd vim
PDF
最近作ったもの
PDF
SVNのすすめ&Redmineでプロジェクト管理
PDF
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PDF
Word bench7月号
KEY
P4p20120408
PDF
(工事中) Git の仕組み
PDF
(工事中) Git の仕組み
PDF
バージョン管理システム入門
PDF
WordPressで行う継続的インテグレーション入門編
PDF
4時間まったりWordPressテーマ作成講座
CodeIgniter東京勉強会 2011.05.14
NetBeansではじめる FuelPHP
はこだてIKA夜間勉強会 バージョン管理#01 -Subversion編-
バージョン管理#01 -Subversion編-
WordPress を使いこなそう
WordCampOsaka2012 開発ツール談義「NetBeans」
Net commonsアドオンモジュールセミナー第4回小ネタ集
WordPress中級者への道!テンプレートタグはどう動くのか!?
WordCamp Kansai 2015 CI ハンズオン
Tdd vim
最近作ったもの
SVNのすすめ&Redmineでプロジェクト管理
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Word bench7月号
P4p20120408
(工事中) Git の仕組み
(工事中) Git の仕組み
バージョン管理システム入門
WordPressで行う継続的インテグレーション入門編
4時間まったりWordPressテーマ作成講座

NetBeans plugin for wordpress