De Joomla Ajax interface gebruiken
From Joomla! Documentation
Wat is de Joomla Ajax interface (com_ajax)
Een slanke, uitbreidbaar component dat gebruikt wordt als startpunt voor HTTP requests voor op zich zelf staande modules en plugins om zo de potentie van de Ajax-functionaliteit daarin te gebruiken. Com_ajax wordt normaal gebruikt wanneer je niet de ontwikkelaar van het component bent waar de module of plugin mee samenwerkt.
OPMERKING: Als u een component ontwikkelaar bent hoeft u niet com_ajax te gebruiken implementeren om van de Ajax-functionaliteit gebruikt te maken. U kunt direct in uw component doen.
Voorbeelden van gebruik maar niet gelimiteerd tot:
- Een module die data ophaalt van een externe API
- Een module interactie heeft met een component die u zelf niet ontwikkeld hebt
- Een plugin die API-functionaliteit implementeert om datagebruik van uw website toe te staan
De anatomie van een Ajax request
Verplicht
option=com_ajax
[module|plugin]=name
format=[json|debug|raw]
Optioneel
method=[custom fragment]
wordt standaardget
bij gebruik.
Overzicht
Alle verzoeken beginnen met ?option=com_ajax
die deze extensie aanroept en moet de type extensie benoemen en de gegevensindeling die geretourneerd moet worden.
Extra variabelen en waarden die door uw extensie gebruikt worden mogen ook in de URL opgenomen worden.
Bijvoorbeeld, een verzoek om ?option=com_ajax&module=session
zal mod_session
aanroepen met de resultaten in de standaardopmaak geretourneerd. In contrast, ?option=com_ajax&plugin=session&format=json
zal onAjaxSession
aanroepen waarin de resultaten in JSON geretourneerd worden.
Module ondersteuning
Samenvatting
Module-ondersteuning wordt volbracht door een methode aan te roepen in het helper.php
modulebestand
Details
Verzoeken vanuit een module moeten de module
variabele in de URL bevatten, gecombineerd met de naam van de module. (b.v. module=session
voor mod_session
).
De waarde wordt ook gebruikt voor:
- De naam van de map om het helper-bestand te vinden, b.v.
/modules/mod_session/helper.php
- De naam van de class om aan te roepen, b.v.
modSessionHelper
Eventueel kan de method
variabele worden opgenomen om een override te maken voor de standaard voorvoegsel van get
- OPMERKING: Alle methodes moeten eindigen met
Ajax
. Bijvoorbeeld: method=mySuperAwesomeMethodToTrigger
zal aanroepenmySuperAwesomeMethodToTriggerAjax
De Ajax sessie module is een voorbeeldmodule die deze functionaliteit laat zien.
Plugin reactie
Samenvatting
Plugin-ondersteuning wordt bereikt door de onAjax[Name]
aan te roepen in de plugin event.
Details
Plugin-verzoeken moeten plugin
variabele in de URL bevatten, gecombineerd met de naam van de plugin-event, b.v. plugin=session
voor onAjaxSession
.
Deze waarde wordt ook gebruik voor:
- De plugin-class naam zoals in de
plgAjax[Name]
is bepaald. - De plugin-function naam zoals in de
plgAjax[Name]
is bepaald. - De standaard plugin-groep is
ajax
. U kan deze wijzigen door degroup
parameter te specificeren. (Vanaf Joomla! 3.4)
De Ajax Recente artikelen plugin is een voorbeeld-plugin die deze functionaliteit demonstreert.
Opmaak reactie
format=[json|debug]
is een optioneel argument voor de opmaak van het resultaat.
json
voor JSON opmaakdebug
voor leesbare output van de resultaten.