Magento2用PHPStormプラグインを試す
この記事は公開から 1年以上が経過しています。現在の最新情報との整合性については弊社では一切の責任を負いかねます。
Magentoのカスタマイズや機能開発をする際には、PHPStormやVS Codeのような統合開発環境(IDE)が欠かせません。
テキストエディタでMagentoのカスタマイズに挑戦するのは、正直かなり辛いものであると言っても過言ではないでしょう。
多くのMagentoに携わる技術者が利用しているのは、冒頭でもあげたPHPStormやVS Codeなどです。
(NetBeansやEclipseという選択肢もあります)
これらのソフトウエアを使ってプログラムを閲覧・作成・改変することで、テキストエディタよりも効率よく作業ができます。
そして今回、PHPStorm用にMagento公式のプラグインがリリースされました。
PHPStorm用Magentoプラグインでできること
プラグインのGithubページでは、以下のように紹介されています。
- XMLとJavaScriptファイルに対するコード補完や定義参照
- クラス・インターフェイスに対するXML定義の参照
- クラス・インターフェイス・メソッドに対するPlugin定義の参照
- クラス・インターフェイス・メソッドに対するWeb API定義の参照
- Pluginクラスの自動生成
- Plugin定義のチェック
- RequireJSの参照とコード補完
- MFTF(テストフレームワーク)の参照とコード補完
- GraphQLに対するナビゲーション行マーカー
- コード自動生成
- XML設定のチェック
いくつか例にとって紹介しましょう。
クラス・インターフェイスに対するXML定義の参照
Magentoのエクステンションを開発していると、XML定義を参照しなければならないことが多々あります。
その場合、どのXMLで今作業しているクラスが定義されているかを調べるのはなかなかに手間です。
公式のPHPStormプラグインを導入すると、PHPコードの左側に、下記のようなアイコンが表示されるようになります。
一番右側のアイコンをクリックすると、次のようなダイアログが表示されます。
このダイアログに表示されているXMLに、今開いているクラスが使われているということがわかります。
今までクラス名で検索していたのが、1クリックで調べられるようになるので、作業がはかどりますね。
クラス・インターフェイス・メソッドに対するPlugin定義の参照
次はPlugin定義の参照です。
先程のXML定義参照のアイコンの左隣にある、電源プラグのようなアイコンをクリックすると、そのクラス・インターフェイス・メソッドに対するPlugin定義を表示してくれます。
Pluginクラスの自動生成
最後はPluginクラスの自動生成です。
Magentoには、
- before
- around
- after
の3種類のPluginをpublicメソッドに対して定義できる仕組みが用意されています。
ですが、このPluginを定義するときにはメソッドのパラメータ定義を都度確認しながら行う必要があり、タイプミスや定義ミスがよく起きます。
このプラグインを使えば、以下の手順で簡単にPluginの定義ができます。
- publicメソッドを選ぶ
- 右クリックでコンテキストメニューを表示させる
- 「Create a plugin」を選ぶ
- 表示されたダイアログの項目を埋める
- OKボタンを押してPluginクラス・メソッドとXML定義を生成する
- Pluginの処理を書く
今までは開発者が都度確認しながら記述していたので、プラグインを使うことで手間とミスの削減ができます。
PHPStorm用Magentoプラグインのインストール方法
このプラグインのインストール方法はとても簡単です。
以下の手順でインストールできます。
- PHPStormのメニューから「Preferences」を選ぶ
- 「Plugins」を選ぶ
- 「Marketplace」を選び、検索フォームに「Magento」と入力する
- 表示されたプラグインをインストールし、PHPStormを再起動する
インストールできたら、
- PHPStormのメニューから「Preferences」を選ぶ
- 「Languages & Frameworks」を選ぶ
- 「PHP」を選び、「Frameworks」を選ぶ
- 「Magento」を選び、「Enable Plugin for this project」にチェックを付けて、設定を適用する
でプラグインが有効になります。
無料で使えるプラグインなので、PHPStormをお使いの方はぜひインストールしてみてください。
- お知らせ (34)
- Magento Open Source (169)
- Adobe Commerce (86)
- Magentoトピックス (349)
- Magentoバージョンアップ (11)
- OroCommerce (1)
- AkeneoPIM (16)
- Shopware (26)
- 世界のプライバシー保護規制 (11)
- OroCRM (14)
- Typo3 (9)
- イベント (27)
- Mage-OS (1)
- エクステンションリリース情報 (75)
- Mautic (1)