Есть также языки и шаблоны, но они разработаны исключительно для того чтобы изменять выводимую информацию страницы, независимо от показываемых данных. Хотя в этой статье будет рассказано про использование файлов перевода и шаблонов, мы не будем сильно углубляться в тему этих двух типов расширений.
Инструменты, иногда называемые расширениями, по существу могут быть любым типом расширений, который не падают в только что описанные категории типов расширений.
Расширения распространяются в архивных файлах (часто это ZIP-архив). Архив включает в себя файл декларации XML, который содержит данные с описанием расширения. Это файл декларации, по содержанию которого Joomla! может определить, какое это расширение, как оно называется, какие в него включены файлы и настройки, а также какие действия требуется выполнить в процессе инсталляции.
Компоненты
Компоненты - несомненно самые фундаментальные расширения Joomla!. Всякий раз когда открывается страница сайта на Joomla!, она генерируется каким-то определенным компонентом. В отличие от других расширений, выводимая информация, создаваемая компонентом, отображается в области основного контента. Так как компоненты - самые фундаментальные расширения, они также являются самыми сложными в разработке.
Один компонент о котором будут знать все администраторы сайтов на Joomla! это компонент Контента. Этот компонент используется чтобы отображать статьи, категории и разделы контента вашего сайта.
В дополнение к выводу данных компонента как страницы XHTML, мы можем выводить данные и в других форматах - таких как Feed, PDF, RAW.
Для нормальной работы многие компоненты позволяют , а иногда и требуют установку дополнительных расширений. При создании своего оригинального компонента, вообще хорошей практикой является создание 'крюков' в коде компонента, которые позволят другим расширениям легко расширить основные функциональные возможности нашего компонента с помощью плагинов Joomla!.
Модули
Модули используются для того чтобы выводить небольшие части контента, обычно слева, справа, вверху или внизу генерируемой страницы. Есть многие основные модули, например модули меню.
Плагины
Есть различные типы плагинов, каждый из которых может использоваться по-разному; однако, большинство плагинов управляется с помощью Событий. Плагины могут выполнять функции Слушателя и его классы при наступлении определенного события, которое Joomla! может объявить, используя глобальный Диспетчер Событий.
Описания типов плагинов
| Тип плагина | Функции |
| authentication | Подтверждение подлинности пользователя во время процесса логина |
| content | Обработка элементов контента до того как они отображаются на странице сайта |
| editors | Редакторы WYSIWYG, которые могут использоваться для редактирования статей сайта |
| editors-xtd | Расширения редакторов (обычно дополнительные кнопки редактора) |
| search | Поиск данных с использованием компонента Поиск |
| system | Наблюдатели системных событий |
| user | Обработка объекта пользователя после выполнения операций |
| xmlrpc | Создание ответов XML-RPC |
Такие расширения как Инструменты не устанавливаются непосредственно в Joomla!. Инструменты Joomla! это отдельные скрипты или приложения, которые могут потребовать собственной отдельной установки. Хороший пример инструмента Joomla - JSAS (Joomla Stand Alone Server). JSAS предоставляет простой путь настроить установку Joomla! на Windows системе. Чтобы узнать больше о JSAS пожалуйста, обратитесь к http://jsas.joomlasolutions.com.
