J3.x

Triggering content plugins in your extension: Difference between revisions

From Joomla! Documentation

Wilsonge (talk | contribs)
Remove notes that were specific to 1.5 - they are now on the 1.5/2.5 specific pages
Wilsonge (talk | contribs)
Updates to be 3.x specific
Line 18: Line 18:
$params = new JObject;
$params = new JObject;


// Note JDispatcher is deprecated in favour of JEventDispatcher in Joomla 3.x however still works.
// Note JEventDispatcher succeeded the older JDispatcher from Joomla 1.5/2.5 however it does still work if you need to keep compatibility.
JPluginHelper::importPlugin('content');
JPluginHelper::importPlugin('content');
$dispatcher = JDispatcher::getInstance();
$dispatcher = JEventDispatcher::getInstance();
$dispatcher->trigger('onContentPrepare', array('some.context', &$article, &$params, 0));
$dispatcher->trigger('onContentPrepare', array('some.context', &$article, &$params, 0));
</source>
</source>

Revision as of 09:15, 7 April 2020

Joomla! 
3.x

A common example of using plugins is to run the content plugins on some text. This is useful if you want to support plugins that usually work on Content from a custom extension. For the content prepare trigger you can simply call:

$text = JHtml::_('content.prepare', $text);

For any other content triggers you must call:

$article = new stdClass;
$article->text = $text;

// add more to parameters if needed
$params = new JObject;

// Note JEventDispatcher succeeded the older JDispatcher from Joomla 1.5/2.5 however it does still work if you need to keep compatibility.
JPluginHelper::importPlugin('content');
$dispatcher = JEventDispatcher::getInstance();
$dispatcher->trigger('onContentPrepare', array('some.context', &$article, &$params, 0));

You might want to look at core components (for example com_content) for an example. See the triggers page for the possible content plugin triggers.