Difference between revisions of "Triggering content plugins in your extension"
From Joomla! Documentation
m (moved Using plugins in your own extension to Triggering content plugins in your extension: Merged into Supporting plugins in your component - redistributed content) |
(Merged into Supporting plugins in your component) |
||
Line 1: | Line 1: | ||
− | + | A common example of [[Supporting plugins in your component|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 latest release of Joomla! 1.5 {{JVer|1.5}} and newer versions, you can simply use: | |
− | |||
<source lang="php"> | <source lang="php"> | ||
− | $ | + | $text = JHTML::_('content.prepare', $text); |
− | |||
</source> | </source> | ||
− | |||
− | + | For early versions of Joomla! 1.5, you need to "spell it out": | |
− | |||
<source lang="php"> | <source lang="php"> | ||
$dispatcher =& JDispatcher::getInstance(); | $dispatcher =& JDispatcher::getInstance(); | ||
− | + | $item->text = & your_text_area_item; | |
− | + | $item->params = clone($params); | |
− | + | JPluginHelper::importPlugin('content'); | |
− | + | $dispatcher->trigger('onPrepareContent', array (& $item, & $item->params, 0)); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</source> | </source> | ||
Revision as of 13:43, 5 July 2012
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 latest release of Joomla! 1.5 and newer versions, you can simply use:
$text = JHTML::_('content.prepare', $text);
For early versions of Joomla! 1.5, you need to "spell it out":
$dispatcher =& JDispatcher::getInstance();
$item->text = & your_text_area_item;
$item->params = clone($params);
JPluginHelper::importPlugin('content');
$dispatcher->trigger('onPrepareContent', array (& $item, & $item->params, 0));
You might want to look at core components (for example com_content) for an example.
Also for PHP5.3 compliance please look at the discussion page.