Що таке AJAX інтерфейс Joomla! (Com_ajax)
Компактний, розширюваний компонент, який діє в якості точки входу для HTTP запитів для автономних модулів і плагінів, тим самим надаючи їм потенціал функціональності AJAX. Com_ajax в основному використовують в тих випадках, коли не є розробниками того компонента, з яким взаємодіє модуль або плагін.
ПРИМІТКА. Якщо Ви розробник компонентів, то немає необхідності застосовувати в ньому com_ajax для реалізації функціоналу AJAX. Ви можете це зробити безпосередньо в своєму компоненті.
- Модуль, який одержує дані із зовнішнього API.
- Модуль, який взаємодіє з компонентом, який розроблений не вами.
- Плагін, який реалізує схожу з API функціональність для організації споживання даних з вашого сайту.
Анатомія AJAX запиту
- option = com_ajax
- [Module | plugin] = name
- format = [json | debug | raw]
опціонально
- method = [custom fragment] за замовчуванням стає get. якщо не вказано.
Всі запити починаються з? Option = com_ajax. який викликає це розширення, повинні містити в собі тип розширення для виклику і формат повертаються даних.
Додаткові змінні і значення, які використовуються вашим розширенням також можуть бути включені в URL.
Наприклад запит до? Option = com_ajaxmodule = session викличе mod_session з результатами, повернутими в форматі за замовчуванням. Код? Option = com_ajaxplugin = sessionformat = json викличе метод onAjaxSession плагінів з висновком результату в JSON.
підтримка модулів
Підтримка модулів реалізована викликом методу в файлі helper.php модуля.
Запити модуля повинні включати в себе змінну module в URL, в парі з ім'ям модуля (наприклад: module = session для mod_session)
Це значення також використовується для:
- Імені директорії для перевірки файлу помічника, наприклад /modules/mod_session/helper.php
- Найменування класу для виклику, наприклад:
Опціонально може бути включена змінна method для скасування префікса методу get за замовчуванням.
" 'Примітка"': всі методи повинні закінчуватися на Ajax. Наприклад: method = mySuperAwesomeMethodToTrigger викличе mySuperAwesomeMethodToTriggerAjax
Ajax Session Module є прикладом модуля, який демонструє таку функціональність.
відповідь плагінів
Підтримка плагінів досягається шляхом запуску події. плагіна onAjax [Name].
Запити плагінів повинні включати в себе змінну plugin в URL в парі з подією плагіна, наприклад plugin = session для onAjaxSession.
Це значення також використовується для:
- Імені класу плагіна, який слід угодою plgAjax [Name]
- Імені функції, яка слід угодою onAjax [Name] /
- Група плагінів за умовчанням ajax. Ви можете змінити її, вказавши параметр запиту group (починаючи з Joomla! 3.4).
Ajax Latest Articles plugin приклад плагіна, який демонструє таку функціональність.
формат Відповіді
format = [json | debug] необов'язковий аргумент для формату результатів.
- json для формату JSON
- debug для человекочітаемого виведення результатів. / ru / ru / ru