This feature is only supported in the Ultimate edition.
The following is only valid when PHP Plugin is installed and enabled!
Use IntelliJ IDEA as an IDE for Joomla!
development.
In this part:
Before you start
- Download and install Joomla!
. -
Before you start working with Joomla!, make sure that the Joomla! Integration plugin is enabled. The plugin is bundled with IntelliJ IDEA and is activated by default. If the plugin is not activated, enable it on the Plugins Settings page of the Settings / Preferences Dialog as described in Enabling and Disabling Plugins.
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 ^ 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);
^ Click on
select.optionleads to navigation to theoptionmethod of the classselect.When all the other constructs are used, IntelliJ IDEA navigates with ^ Click on the first argument to the corresponding property in the
*.inifile. For example, in the code<?php msg = JText::sprintf('COM_INSTALLER_INSTALL_ERROR', JText::_('COM_INSTALLER_TYPE_TYPE_' . strtoupper($package['type'])));
^ Click on
'COM_INSTALLER_INSTALL_ERROR'leads to navigation to the property'COM_INSTALLER_INSTALL_ERROR'in the fileen-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, etc. When Joomla! support is recognized, IntelliJ IDEA suggests
installing DocBlocks:

- IntelliJ IDEA suggests importing the Joomla! code style. See section Configuring Joomla! Support
- IntelliJ IDEA detects databases in projects. Just click
in the Database tool window
tool window and choose Import from sources....
The settings specified in the fileconfiguration.phpare 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$dbprefixfield in theconfiguration.phpfile.It is worth noting that a database dialect should be selected in the SQL Dialects page of the Settings/Preferences dialog. Note also that the type of the selected dialect should be equal to your database type.