Креатив
Верный ход
Качество
Надёжность

Приложение - это глобальный объект, используемый для обработки запроса. Есть два приложения, которые нам интересны - это JSite и JAdministrator. Joomla! использует JSite и JAdministrator для обработки внешних и внутренних запросов соответственно. Классы приложений расширяют абстрактный базовый класс JApplication; большая часть функциональности JSite и JAdministrator - то же самое.

Документ представляет собой глобальный объект, используемый для буферизации ответа. Есть целый ряд различных документов: HTML, PDF, RAW, ошибки. Документ HTML использует шаблоны сайтов и отдаёт XHTML-страницу. Документ в формате PDF отдаёт содержание в формате PDF. RAW-документ позволяет вывести исходные данные без дополнительного форматирования. Документы подписки используются для отображения лент новостей. Документы-ошибки отображают ошибки в шаблонах.

Когда мы выводим данные в этих расширениях, они добавляются в документ. Это позволяет нам изменять вывод перед отправкой, например, мы можем добавить ссылку на файл JavaScript в заголовке документа практически в любой момент в течение жизненного цикла приложения.

Объект приложения всегда хранится в переменной $mainframe. Объект приложения является глобальной переменной, которая может быть доступна внутри функций и методов, объявив $mainframe глобальной:

/**
* Pass-through method to check for admin application.
*
* @access public
* @return boolean True if application is JAdministrator
*/
function isAdmin()
{
global $mainframe;
return $mainframe->isAdmin();
}

В отличие от приложения, для доступа к глобальным объектам мы используем метод JFactory::getInstance()

$document =& JFactory::getDocument();

Обратите внимание, что мы используем оператор =& для получения документа. Это гарантирует, что мы получаем ссылку на глобальный объект документа и что мы не создаём копию документа.

Вернуться к оглавлению

Войти на сайт

Запомнить меня

Новости

  • Перевод Mastering Joomla! 1.5

    14.03.2013

    Продолжается перевод книги "Mastering Joomla! 1.5". На данный момент полностью переведено 2 главы. Полностью перевод книги...

    Подробнее...

  • Модернизация сайта

    28.05.2012

    Уважаемые посетители! Мы полностью модернизировали наш сайт и надеемся что сейчас им станет...

    Подробнее...