mage-fxcoding9.de Get a license
← All extensions
INTELLIJ · PHPSTORMv1.2.0

Advanced Magento Support

Advanced Magento Support for PhpStorm & IntelliJ IDEA

Magento 2 fights your IDE. di.xml is untyped strings. ACL resources, config paths, translations and layout blocks are referenced by name across dozens of files. Every new module, plugin or observer is boilerplate. Out of the box your IDE treats most of it as plain text — so you grep, guess, and find out at runtime when bin/magento blows up.

Advanced Magento Support teaches PhpStorm to actually understand Magento 2: navigate, validate, refactor and scaffold across XML and PHP, and catch mistakes before they ship.

See and navigate Dependency Injection

  • Visual DI graph tool window for di.xml — types, preferences, virtual types and plugins, with caret sync and graph-to-source navigation
  • Plugin interception diagrams — nested around-layers by sortOrder, before/after at their chain depth
  • Code Vision on <plugin> declarations linking to the before/around/after interceptor methods
  • Bidirectional PHP ↔ di.xml navigation, argument & declaration completion, extract-to-virtual-type, safe rename, find usages
  • DI validation: constructor signature checks, virtual-type cycles, duplicate preferences, invalid class references

Navigate everything, not just PHP

  • Jump between XML and PHP for plugins, observers, routes, DI preferences, templates, ACL resources, config paths, translations, layout blocks, the admin menu, email templates, indexers, message-queue topics, db_schema tables, GraphQL resolvers, MFTF sections, Web API and widgets
  • Gutter icons, Go to Definition and Find Usages wherever Magento uses a string identifier
  • Quick Documentation on block names, block classes and templates

Catch errors before runtime

  • Inspections for unresolved references, missing classes and files, wrong interfaces, duplicate declarations, dependency cycles and argument type mismatches — with quick-fixes to create the missing file or class
  • Safe cross-file rename for layout blocks, ACL resource ids and DI virtual types

Generate the boilerplate

  • New → Magento: module, controller, plugin (interceptor), observer, queue consumer, CRUD entity, CLI command, email template, admin menu item, block/view model, EAV attribute, data & schema patches, customer section
  • Test scaffolding: unit, integration and MFTF (test, section, action group, test suite)

Testing & frontend

  • Code Vision navigation between production code and PHPUnit tests, plus one-click test creation
  • MFTF section / action-group navigation, completion and inspections
  • Frontend: layout XML, RequireJS, Less, translations, UI components, themes and widgets

Built for developers and teams shipping production Magento 2 extensions who want their IDE to pull its weight — less grepping, fewer runtime surprises, more shipping.

<!-- MAGEfx_SCREENSHOTS_START -->

Screenshots

Visual DI graph

Visual DI graph Your di.xml as a node graph: preferences, virtual types and the interception stack, joined by colour-coded extends / preference / intercepts edges
Scenario di-graph

DI graph: grouped columns

DI graph: grouped columns Same di.xml, bucketed by declaration kind — preferences, types with their plugins, virtual types, and the factories and proxies it leans on
Scenario di-graph-columns

Generate Magento boilerplate

Generate Magento boilerplate New → Magento scaffolds modules, controllers, plugins, observers, CRUD entities, patches and tests
Scenario scaffolding-menu

Plugin method gutter navigation

Plugin method gutter navigation Gutter icon on a plugin method jumps to the intercepted method
Scenario plugin-gutter

Plugin interception via Code Vision

Plugin interception via Code Vision Code Vision on <plugin> links to the before/around/after interceptor methods
Scenario di-plugin-codevision

DI preference navigation

DI preference navigation Navigate a di.xml preference for/type straight to the PHP class
Scenario di-preference

ACL resource navigation

ACL resource navigation Ctrl+Click the resource attribute to jump to acl.xml
Scenario acl-navigation

Layout block reference

Layout block reference Navigate referenceBlock name to the block declaration
Scenario layout-block-ref

System config path

System config path Navigate field id to its config path declaration
Scenario config-path

PHP translation phrase

PHP translation phrase Navigate __() phrase to en_US.csv
Scenario translation-php

Widget container mapping

Widget container mapping Widget container name navigates to layout container
Scenario widget-container

Web API ACL resource

Web API ACL resource webapi resource ref resolves to acl.xml
Scenario webapi-acl

Route conflicts in routes.xml

Route conflicts in routes.xml Open any routes.xml as a live view: the merged pipeline shows this module's controller is shadowed and never runs
Scenario routes-conflicts

Magento Routes: winners and shadowed controllers

Magento Routes: winners and shadowed controllers Project-wide Routes view: routers, the resolution pipeline per route, and a conflicts table of every shadowed controller
Scenario routes-tool-window

<!-- MAGEfx_SCREENSHOTS_END -->