Joomla ajax інтерфейс (com_ajax) - joomla! По російськи

В Joomla 3.x з'явився новий компонент під назвою com_ajax. Який представляє з себе тонкий, розширюваний компонент, який використовується в якості відправної точки для виконання HTTP запитів з модулів і плагінів.

Кілька прикладів використання:

  • Модуль, який отримує дані з зовнішнього API
  • Модуль, який використовує ресурси стороннього компонента
  • Плагін, який реалізує API в якості функціоналу на Вашому сайті

Це далеко не весь перелік можливостей, які відкриває com_ajax перед розробниками.

Анатомія Ajax запитів

  • 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 модуля.

Запит модуля повинен включати в URL змінну module. в парі з ім'ям модуля (module = session для mod_session).

Це значення також використовується:

  • Як ім'я каталогу для перевірки допоміжного файлу, наприклад /modules/mod_session/helper.php
  • Як ім'я класу для виклику, наприклад modSessionHelper

Так само запит може містити необов'язковий параметр method. Змінна може бути включена, щоб перевизначити метод за замовчуванням (get).

ПРИМІТКА: Всі методи повинні закінчуватися на Ajax. Наприклад: method = mySuperAwesomeMethodToTrigger потрібно назвати mySuperAwesomeMethodToTriggerAjax

Ajax-Session-Module є прикладом модуля, який демонструє цю функціональність.

для плагінів

Підтримка плагінів здійснюється викликом події плагіна onAjax [Name].

Запит модуля повинен включати в URL змінну plugin. в парі з ім'ям модуля (plugin = session для onAjaxSession).

Це значення також використовується для:

  • Передачі імені плагіна для подальшої plgAjax [Name] конверсії
  • Передачі імені функції плагіна для подальшої onAjax [Name] конверсії

Ajax-Latest-Articles є прикладом плагіна, який демонструє цю функціональність.

Формат повертаються даних

format = [json | debug] є додатковим аргументом, що визначає формат одержуваного результату:

  • json для формату JSON
  • debug для людино-зрозумілого результату на виході

Схожі статті