J'ai lu ça $context
paramètre est:
"Le contexte du contenu transmis au plug-in - il s'agit du nom et de la vue du composant - ou du nom du module (par exemple, com_content.article)"
https://docs.joomla.org/Plugin/Events/Content
Qu'est-ce que ça veut dire? Peut-on manipuler module (s) et autre composant (s) dans en plus de com_content
depuis le plugin de contenu, et si oui, comment? Pouvez-vous donner un exemple de code?
Le paramètre $context
Peut être utilisé pour définir si votre plugin doit être exécuté ou non dans certaines circonstances. Par exemple, vous pouvez souhaiter que votre plug-in soit exécuté lors de l'affichage des blogs de catégorie, mais pas lors de la lecture de l'article complet:
if ($context == "com_content.category") {
// Your code for category blog here
}
Certains des contextes disponibles sont:
com_content.category
com_content.article
com_content.featured
com_contact.category.title
com_tags.tag
(La liste ne contient que les contextes que j'ai pu confirmer avec un test rapide, n'hésitez pas à en ajouter plus))
Vous pouvez créer un petit plugin pour voir les différents contextes:
<?php
// no direct access
defined('_JEXEC') or die;
class plgContentContext extends JPlugin
{
public function onContentPrepare($context, &$article, &$params)
{
echo '<h3 style="color:white;background:red">' . $context . '</h3>';
}
}
?>
Vous pouvez modifier tout composant utilisant l'événement onContentPrepare. J'ai effectué une recherche rapide sur Joomla 3.4.4. Il est utilisé par com_config, com_content, com_tags et com_users.
Toute extension peut également choisir d’utiliser ce déclencheur de plug-in.