порядок загрузки классов, библиотек, вызова функций в Framework Joomla
Инициализация Joomla
- Включение: defines.php
- Включение: framework.php
- Проверка наличия configuration.php. Редирект на скрипт инсталляции в случае неудачи.
- Включение: import.php
- Включение: configuration.php
- Установка параметра error_reporting
- Включение классов совместимости со старыми версиями PHP
- Если включена отладка сайта, то включается профайлер
- Импорт joomla.application.menu
- Импорт joomla.user.user
- Импорт joomla.environment.uri
- Импорт joomla.html.html
- Импорт joomla.utilities.utility
- Импорт joomla.event.event
- Импорт joomla.event.dispatcher
- Импорт joomla.language.language
- Импорт joomla.utilities.string
- Отметка для профайлера: afterLoad
- Определение переменной $mainframe. Вызов JFactory::getApplication('site')
- Создание экземпляра и его возврат. Вызов JApplication::getInstance
- Инициализация приложения. Вызов JSite::initialise
- Загрузка языковых файлов
- Вызов parent::initialise
- Первый вызов JFactory::getUser (инициализация объекта пользователя)
- Импорт joomla.user.user
- Создание сессии. Вызов JFactory::getSession
- Установка редактора для пользователя
- Импорт системных плагинов/мамботов. Вызов JPluginHelper::importPlugin('system')
- Отметка для профайлера: afterInitialise
- Событие: onAfterInitialise
Авторизация Joomla
- Вызов JSite::route
- Вызов JSite::authorize
- Проверка уровня доступа текущего пункта меню. Редирект в случае неудачи (не зарегистрирован или не хватает прав доступа).
- Отметка профайлера: afterRoute
- Событие: onAfterRoute
Работа компонента Joomla
- Обработка компонента: Вызов JSite::dispatch
- Отметка профайлера: afterDispatch
- Событие: onAfterDispatch
Отрисовка страницы Joomla
- Отрисовка страницы: Вызов JSite::render
- Отметка профайлера: afterRender
- Событие: onAfterRender
- Вывод страницы: Вызов JResponse::toString