Plugin

From Joomla! Documentation

Revision as of 02:04, 13 September 2011 by Wgviana (talk | contribs)

<translate> A plugin is a kind of Joomla! extension. Plugins provide functions which are associated with trigger events. Joomla provides a set of core plugin events, but any extension can fire (custom) events. When a particular event occurs, all plugin functions of the type associated with the event are executed in sequence. This is a powerful way of extending the functionality of Joomla. It also offers extension developers a way to allow other extensions to respond to their actions, making extensions extensible.</translate>

<translate> The Joomla! plugin architecture follows the Observer design pattern. The JPlugin class provides the means to register custom plugin code with core or custom events. The JEventDispatcher class is an event handler which calls all plugins registered for a particular event, when that event is triggered. In Joomla 4.x this has been moved to the \Joomla\Event\Dispatcher class in Joomla, and additionally follows the Mediator design pattern</translate>

<translate> See also: Component, Module, Template</translate>


Useful reference: Gallery 2: Embedding: Event-Based Loose-Coupled Integration

Recommended Reading[edit]

Developers[edit]

<translate> Plugin Development</translate>

{{Portal:Plugin_Development/Intro/<translate> en</translate>}}

<translate> Using Plugins</translate>

{{Portal:Plugin_Development/Using_Plugins/<translate> en</translate>}}

<translate> Reading list</translate>

{{Portal:Plugin_Development/Reading list/<translate> en</translate>}}

<translate> Tutorials</translate>

{{Portal:Plugin_Development/Tutorials/<translate> en</translate>}}


<translate> Plugin Development Articles Needed</translate>

{{Portal:Plugin_Development/Projects/<translate> en</translate>}}


For more developer information, see Plugin Development.

Events[edit]

<translate> Joomla! ships with a variety of core events, organised into groups. These are described in the following topics.</translate>

<translate>

Api Authentication[edit]

</translate>

<translate>

Authentication[edit]

</translate>

<translate>

Behaviour[edit]

</translate>

<translate>

Captcha[edit]

</translate>

<translate>

Content[edit]

</translate>

<translate>

Editors[edit]

</translate>

<translate>

Editors-xtd[edit]

</translate>

<translate>

Extensions[edit]

</translate>

<translate>

Fields[edit]

</translate>

<translate>

Filesystem[edit]

</translate>

<translate>

Finder[edit]

</translate>

<translate>

Installer[edit]

</translate>

<translate>

Media Action[edit]

</translate>

<translate>

Privacy[edit]

</translate>

<translate>

Quick Icons[edit]

</translate>

<translate>

Sampledata[edit]

</translate>

<translate>

Schemaorg[edit]

</translate>

<translate>

System[edit]

</translate>

<translate>

User[edit]

</translate>

<translate>

Web Services[edit]

</translate>

<translate>

Workflow[edit]

</translate>

<translate> === Other Core Component Events === </translate>

<translate>

Actionlog Component[edit]

</translate>

<translate>

Cache Component[edit]

</translate>

<translate>

Checkin Component[edit]

</translate>

<translate>

Config Component[edit]

</translate>

<translate>

Contact Component[edit]

</translate>

<translate>

Installer Component[edit]

</translate>

<translate>

Menu Component[edit]

</translate>

<translate>

Module[edit]

</translate>