J4.x

J4.x:Inhaltsplugins in eigenen Erweiterungen auslösen

From Joomla! Documentation

This page is a translated version of the page J4.x:Triggering content plugins in your extension and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎français • ‎中文(台灣)‎
Joomla! 
4.x

Ein gängiges Beispiel für die Verwendung von Plugins ist die Ausführung der Inhaltsplugins für irgendeinen Text. Dies ist nützlich, wenn Plugins unterstützt werden sollen, die normalerweise mit Inhalten aus einer benutzerdefinierten Erweiterung arbeiten. Für den Trigger content prepare kann beispielsweise folgender Code verwendet werden:

$text = \Joomla\CMS\HTML\HTMLHelper::_('content.prepare', $text);

Für alle anderen Content-Trigger kann folgendes verwendet werden:

// Diese 3 Zeilen stehen am Anfang der Datei direkt unter der JEXEC-Anweisung
use Joomla\CMS\CMSObject;
use Joomla\CMS\Factory;
use Joomla\CMS\Plugin\PluginHelper;

// Dieser Code geht in Methode der Komponente, die die Plugins auslöst
$article = new \stdClass;
$article->text = $text;

// Falls nötig, mehr Parameter hinzufügen
$params = new CMSObject;

PluginHelper::importPlugin('content');
$app = Factory::getApplication();
$app->triggerEvent('onContentPrepare', array('some.context', &$article, &$params, 0));

Beispiele können in Kernkomponenten (z. B. com_content) gefunden werden. Siehe die Seite Trigger für die möglichen Inhalts-Plugin-Trigger.