RSS   Twitter   Copiny   Copiny
Нашел ошибку? 

Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!

Порядок работы Joomla Framework при загрузке страницы

порядок загрузки классов, библиотек, вызова функций в 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

 

Инициализация

  • Включение: 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

 

Авторизация

  • Вызов JSite::route
  • Вызов JSite::authorize
    • Проверка уровня доступа текущего пункта меню. Редирект в случае неудачи (не зарегистрирован или не хватает прав доступа).
  • Отметка профайлера: afterRoute
  • Событие: onAfterRoute

 

Обработка

  • Обработка компонента: Вызов JSite::dispatch
  • Отметка профайлера: afterDispatch
  • Событие: onAfterDispatch

 

Отрисовка

  • Отрисовка страницы: Вызов JSite::render
  • Отметка профайлера: afterRender
  • Событие: onAfterRender
  • Вывод страницы: Вызов JResponse::toString

Инициализация

 

* Включение: defines.php

* Включение: framework.php

o Проверка наличия configuration.php. Редирект на скрипт инсталляции в случае неудачи.

o Включение: import.php

o Включение: configuration.php

o Установка параметра error_reporting

o Включение классов совместимости со старыми версиями PHP

o Если включена отладка сайта, то включается профайлер

o Импорт joomla.application.menu

o Импорт joomla.user.user

o Импорт joomla.environment.uri

o Импорт joomla.html.html

o Импорт joomla.utilities.utility

o Импорт joomla.event.event

o Импорт joomla.event.dispatcher

o Импорт joomla.language.language

o Импорт joomla.utilities.string

* Отметка для профайлера: afterLoad

* Определение переменной $mainframe. Вызов JFactory::getApplication('site')

o Создание экземпляра и его возврат. Вызов JApplication::getInstance

* Инициализация приложения. Вызов JSite::initialise

o Загрузка языковых файлов

o Вызов parent::initialise

+ Первый вызов JFactory::getUser (инициализация объекта пользователя)

# Импорт joomla.user.user

# Создание сессии. Вызов JFactory::getSession

+ Установка редактора для пользователя

* Импорт системных плагинов/мамботов. Вызов JPluginHelper::importPlugin('system')

* Отметка для профайлера: afterInitialise

* Событие: onAfterInitialise

 

 

[править]

Авторизация

 

* Вызов JSite::route

* Вызов JSite::authorize

o Проверка уровня доступа текущего пункта меню. Редирект в случае неудачи (не зарегистрирован или не хватает прав доступа).

* Отметка профайлера: afterRoute

* Событие: onAfterRoute

 

 

[править]

Обработка

 

* Обработка компонента: Вызов JSite::dispatch

* Отметка профайлера: afterDispatch

* Событие: onAfterDispatch

 

 

[править]

Отрисовка

 

* Отрисовка страницы: Вызов JSite::render

* Отметка профайлера: afterRender

* Событие: onAfterRender

 

* Вывод страницы: Вызов JResponse::toString

Комментарии (27) Добавить комментарий
  • guest
    guest
    20 Сентября 2011, 15:35
     ↑  0  ↓     ответ

    Будьте добры напишите пожалуйста такую же статью про версию 1.7, и ещё интересует, где и как в этой цепочке обрабатывается JREquest и данные отправленной формы

    • smet.denis
      smet.denis (админ)
      02 Октября 2011, 17:01
       ↑  0  ↓     ответ

      По большому счету разница между 1.5 и 1.7 не очень большая. Возможно некоторые классы объявлены в других местах.

      То что вас интересует происходит при диспетчеризации (JSite::dispatch), которая обычно вызывает метод(ы) из компонента. Например конструктор контроллера у текущего компонента.

      Обработка форм ложится на плечи самого компонента, который отвечает за эту форму. Там, как вы уже верно подметили будет использоваться класс JRequest, который отвечает за работу с внешними данными (GET, POST, ...).

      Но стоит заметить, что сама Joomla будет ориентироваться на некоторые переменные, например такие как (в порядке убывания важности) "Itemid", "option", "task", "view", "cmd". В зависимости от компонента набор этих переменных может быть разный.

  • Алекс
    Алекс
    30 Сентября 2011, 00:39
     ↑  -4  ↓     ответ

    Да. Давно пора на joomla 1.7 переходить

  • Валерий
    Валерий
    28 Октября 2011, 02:32
     ↑  -1  ↓     ответ

    Добрый день! Не подскажите, где почитать про код Joomlы?

    • Марат
      Марат
      01 Апреля 2013, 19:51
       ↑  -2  ↓     ответ

      В самом коде Джумлы) Сам так смотрел по списку выше

  • Мебельный интернет магазин
    Мебельный интернет магазин
    11 Ноября 2017, 23:05
     ↑  -1  ↓     ответ

    Вас приветствует Волгоградский интернет-магазин "Где Мебель"!

    Планируете купить мебель gde-mebel.com/kupit/ в Волгограде или Волжском?

    В современном мире есть масса поводов обзавестись новой мебелью.

    У вас родился малыш? Вам конечно же нужна детская кроватка. Купили новую квартиру? Имеет смысл купить и мебель, если старая, особенно после переезда, уже не может сохранить былого внешнего вида. Сыграли свадьбу? Вам или вашей второй половинке может захотеться купить и новую кровать, и шкаф, и тумбочки с комодами - ведь теперь это - ваш общий дом. И для одного из вас - новый дом.

    Так или иначе, но без мебели, которая бы радовала ваш глаз, немыслимо слово "уют". И именно по домашнему убранству и обстановке о нас нередко судят наши гости, те, кого мы приглашаем к себе в дом.

    Подобрать мебель, которая бы с одной стороны идеально вписывалась в Ваш интерьер, радовала глаз и при этом не тяготила кошелёк - не так просто. В каких-то магазинах - это, как правило, крупные торговые мебельные сети - заоблачные цены. И заоблачные они не потому, что мебель сделана их каких-то особенных материалов или по тому, что там продается очень хорошая мебель. Завышенные цены в крупных мебельных магазинах обусловлены огромными расходами, которые эти магазины несут. На аренду и содержание торговых площадей, на оплату труда десятков сотрудников, без которых не мыслим ни один крупный торговый зал, телевизионную и баннерную рекламу, а так же множество других расходов, неизбежно включаемых магазинами в стоимость своих товаров. Интернет магазин "Где Мебель" к таковым не относится. Нам нет необходимости делать высокую наценку, ведь наши собственные операционные расходы в разы ниже, чем у обычных магазинов. Соответственно, значительно ниже и цена, по которой можно приобрести мебель в нашем интернет магазине в Волгограде.

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

    В конечном счёте такие магазины жертвуют своей репутацией, ведь имея торговый зал в "проходном" месте, репутация как таковая может быть кому-то менее важна, чем прибыль.

    Интернет-магазин "Где Мебель" не относится и к "таким" магазинам, ведь для нас главное - чтобы наши клиенты оставались довольны, имели возможность купить качественную мебель и возвращались к нам снова. Ведь хорошая репутация - это тоже своего рода реклама. И мы ценим своё торговое имя, свою репутацию и своих клиентов!

    По этому вся мебель, которую можно купить в нашем интернет-магазине закупается только на крупнейших мебельных фабриках России и СНГ, произведена с соблюдением всех ГОСТов и имеет все необходимые сертификаты качества и соответствия.

    Онлайн каталог мебели gde-mebel.com/catalog/ нашего интернет-мгазина в г.Волгоград и г.Волжский - огромен. Мы предлагаем много мебели, предоставляя вам большой выбор мебели на любой вкус.

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

    Наш интернет-магазин работает уже давно, а значит нам не приходится ни тратиться на рекламу, ни нести каких-либо дополнительных расходов, включая их в стоимость мебели. Наши цены - действительно низкие цены на мебель в Волгограде и Волжском, и мы гордимся этим. А наш широкий ассортимент позволяет вам с лёгкостью найти всю мебель, которая вам требуется в дом или квартиру - в одном месте, всего лишь открыв наш интернет каталог, и имея возможность сделать заказ не более чем в несколько кликов.

    Интернет-магазин мебели "Где Мебель".

    Купить мебель в Волгограде недорого? Легко!

    Звоните! +7 (937) 083-10-10

    Мы помогаем создавать в вашем доме уют!

    gde-mebel.com/

  • Help With Writing a Thesis Statement for a Research
    Help With Writing a Thesis Statement for a Research
    19 Февраля 2018, 06:14
     ↑  0  ↓     ответ

    Saved as a favorite, I like your blog!

  • Hire Someone to Write My Research Paper
    Hire Someone to Write My Research Paper
    10 Марта 2018, 10:32
     ↑  0  ↓     ответ

    If you desire to obtain a good deal from this article then you have to apply these strategies

    to your won blog.

  • Trasferimento americano sulla perdita di peso con il Gilian
    Trasferimento americano sulla perdita di peso con il Gilian
    13 Марта 2018, 17:50
     ↑  0  ↓     ответ

    Wow, this piece of writing is pleasant, my sister is analyzing these kinds of things,

    thus I am going to convey her.

  • T? dimagrante che aiuta davvero
    T? dimagrante che aiuta davvero
    15 Марта 2018, 20:27
     ↑  0  ↓     ответ

    Pretty! This has been an incredibly wonderful post. Thank you

    for providing this info.

  • litigate
    litigate
    15 Августа 2018, 01:18
     ↑  0  ↓     ответ

    It's vеry trouble-free to find out any matter on net as com?ared to books, as I found this ?rticle at this web pаge.

  • tinyurl.com
    tinyurl.com
    23 Ноября 2019, 20:09
     ↑  0  ↓     ответ

    I'm curious to find out what blog system you're utilizing?

    I'm experiencing some small security issues with my latest website and I would like

    to find something more safe. Do you have any solutions?

  • http://tinyurl.com/
    http://tinyurl.com/
    24 Ноября 2019, 05:50
     ↑  0  ↓     ответ

    Excellent blog right here! Additionally your website quite a bit up fast!

    What host are you the use of? Can I am getting your affiliate hyperlink for

    your host? I want my site loaded up as quickly as yours

    lol

  • http://tinyurl.com
    http://tinyurl.com
    24 Ноября 2019, 16:38
     ↑  0  ↓     ответ

    I got this web site from my buddy who informed me concerning this site and now this time I am browsing this web page and reading very informative

    articles or reviews at this time.

  • tinyurl.com
    tinyurl.com
    25 Ноября 2019, 01:32
     ↑  0  ↓     ответ

    Hi there everyone, it's my first pay a visit at this web site,

    and article is genuinely fruitful designed for me, keep up

    posting these types of articles.

  • of coconut oil
    of coconut oil
    25 Ноября 2019, 17:08
     ↑  0  ↓     ответ

    Greetings! Very useful advice within this article! It

    is the little changes that produce the greatest changes.

    Many thanks for sharing!

  • coconut oil this
    coconut oil this
    25 Ноября 2019, 17:44
     ↑  0  ↓     ответ

    Wow, this piece of writing is fastidious, my younger sister

    is analyzing these kinds of things, so I am going to let know her.

  • plenty of fish dating site
    plenty of fish dating site
    26 Ноября 2019, 09:50
     ↑  0  ↓     ответ

    Hello every one, here every person is sharing these experience, therefore

    it's good to read this webpage, and I used to visit this weblog everyday.

  • Евгений
    Евгений
    29 Декабря 2019, 21:36
     ↑  0  ↓     ответ

    Загрузка CMS Joomla 3.9.14 по шагам: blog.ivru.net/?id=170

    Описано какие файлы загружаются и какие SQL запросы выполняются а процессе генерации главной страницы.

  • camo phone case
    camo phone case
    08 Ноября 2020, 09:06
     ↑  0  ↓     ответ

    Great blog here! Also your site loads up very fast!

    What web host are you using? Can I get your affiliate link

    to your host? I wish my site loaded up as fast as yours lol

  • paper for writing
    paper for writing
    26 Декабря 2020, 09:59
     ↑  0  ↓     ответ

    Hi, I do think this is a great blog. I stumbledupon it ;) I wikl return once again ince i have saved as

    a favorite it. Money and freedom is thee best way tto change, may you be

    rich and continue to guide other people.

    https://goodpaperwritingservices.com

    paper for writing

    paper for writing

    https://goodpaperwritingservices.com https://goodpaperwritingservices.com

  • Clair
    Clair
    09 Марта 2021, 10:15
     ↑  0  ↓     ответ

    Why people still make use of to read news papers when in this technological globe all

    is presented on web?

  • 0mniartist
    0mniartist
    08 Апреля 2021, 12:31
     ↑  0  ↓     ответ

    Hi my friend! I want to say that this post is amazing, nice written and include approximately all vital infos.

    I would like to look extra posts like this . 0mniartist asmr

  • 0mniartist
    0mniartist
    08 Апреля 2021, 23:43
     ↑  0  ↓     ответ

    Hi to all, the contents existing at this web page are really remarkable for people experience,

    well, keep up the good work fellows. 0mniartist asmr

  • 0mniartist
    0mniartist
    09 Апреля 2021, 06:47
     ↑  0  ↓     ответ

    I was wondering if you ever thought of changing the layout of

    your site? Its very well written; I love what youve got

    to say. But maybe you could a little more in the way of content so people could

    connect with it better. Youve got an awful lot of text for only having one or

    two images. Maybe you could space it out better?

    asmr 0mniartist

  • 0mniartist
    0mniartist
    09 Апреля 2021, 14:32
     ↑  0  ↓     ответ

    Admiring the commitment you put into your website and in depth information you present.

    It's great to come across a blog every once in a while that isn't the same out

    of date rehashed information. Great read! I've bookmarked your site and I'm

    including your RSS feeds to my Google account. 0mniartist asmr

  • 0mniartist
    0mniartist
    09 Апреля 2021, 19:31
     ↑  0  ↓     ответ

    First off I would like to say fantastic blog! I had

    a quick question that I'd like to ask if you

    do not mind. I was interested to find out how you center yourself and

    clear your head before writing. I have had trouble clearing my

    thoughts in getting my thoughts out there. I truly do enjoy writing but it just seems like the first 10 to 15

    minutes are wasted just trying to figure out how to begin. Any recommendations or tips?

    Thank you! 0mniartist asmr

Оставить комментарий




* обязательно для заполнения

1 введенный почтовый адрес используется только для обратной связи при ответах в комментариях и сервиса gravatar.com
.