IntelliJ IDEA 2023.1 Help


Use IntelliJ IDEA as an IDE for Joomla! development.

Before you start

Download Joomla!

Install the PHP and Joomla! plugins

This functionality relies on the PHP and Joomla! plugins that should be installed and enabled in your IDE.

The plugins are available only in IntelliJ IDEA Ultimate.

  1. Press Ctrl+Alt+S to open the IDE settings and select Plugins.

  2. Switch to the Marketplace tab and use the search field to find the PHP and Joomla! plugins.

  3. Click Install and restart the IDE if prompted.

Joomla! support

Joomla! support includes:

  • Ability to create a new project.

  • JHTML::_($argument), JText::_($argument), JText::script(), JText::sprintf(); support.

    When JHTML::_($argument) is used, IntelliJ IDEA navigates with Ctrl+Click on the first argument to the corresponding class or method.

    For example, consider the following code:

    <?php $options[] = JHtml::_('select.option', $eid, $extension_name);

    Ctrl+Click on select.option leads to navigation to the option method of the class select.

    When all the other constructs are used, IntelliJ IDEA navigates with Ctrl+Click on the first argument to the corresponding property in the .ini file. For example, in the code

    $msg = JText::sprintf('COM_INSTALLER_INSTALL_ERROR', JText::_('COM_INSTALLER_TYPE_TYPE_' . strtoupper($package['type'])));

    Ctrl+Click on 'COM_INSTALLER_INSTALL_ERROR' leads to navigation to the property 'COM_INSTALLER_INSTALL_ERROR' in the file en-GB.com_installer.ini.

  • Joomla! code style can be selected for the code in the PHP page of the Editor settings, when clicking the link Set from.

  • IntelliJ IDEA detects Joomla when opening a Joomla! module/plugin/extension or a Joomla! root folder, and suggests enabling Joomla! support, and adjusting namespaces.

  • DocBlocks standards for PHP files, classes, class properties, and so on. When Joomla! support is recognized, IntelliJ IDEA suggests installing DocBlocks:

    Joomla DocBlocks installation notification
  • IntelliJ IDEA suggests importing the Joomla! code style. See section Configure Joomla! support

  • IntelliJ IDEA detects databases in projects. Click the Add button in the Database tool window tool window and choose Import from sources... The settings specified in the file configuration.php are detected and used for the new data source connection.

  • IntelliJ IDEA provides database prefixes support and changes #__ to the prefix that is defined in the $dbprefix field in the configuration.php file.

    It is worth noting that a database dialect should be selected on the SQL Dialects page of the Settings dialog (Ctrl+Alt+S). Note also that the type of the selected dialect should match your database type.

Last modified: 21 April 2023