2011-02-28 4 views
0

Je dois écrire une simple extension pour Joomla. Tout ce que je dois faire est de chercher un paramètre de requête URL, et d'effectuer une redirection si le paramètre est là.Joomla Plugin Options

Je pensais un plug-in « système » semblait le plus approprié (ne semblait pas correspondre à une autre catégorie - recherche, l'authentification, le contenu, etc ..)

J'enroulai mon code de travail dans un plugin système suivant Joomla Docs (http://docs.joomla.org/Reference:System_Events_for_Plugin_System#Overview), mais le code n'a aucun effet. Est-ce que j'ai choisi le mauvais type de catégorie de plugin?

Mise à jour:

Voici mon code. J'ai commencé avec tout onAfterInitialise - quand cela ne fonctionne pas, j'ai essayé de remplaçant toutes les méthodes:

<?php 

// no direct access 
defined('_JEXEC') or die('Restricted access'); 

jimport('joomla.plugin.plugin'); 

class plgSystemMyFirstPlugin extends JPlugin 
{ 
     /** 
     * Constructor. 
     * 
     * @access  protected 
     * @param  object $subject The object to observe 
     * @param  array $config An array that holds the plugin configuration 
     * @since  1.0 
     */ 
     public function __construct(&$subject, $config) 
     { 
      parent::__construct($subject, $config); 
      } 



     function onAfterInitialise() 
     { 
      //I have my actual code here - then I added the print statements. 
      print "It's working in onAfterInitialise"; 
     } 

     function onAfterRoute() 
     { 
      print "It's working in onAfterRoute"; 
     } 

     function onAfterDispatch() 
     { 
      print "It's working in onAfterDispatch"; 

     } 


} 
?> 
+0

Quel événement déclenche votre plugin? Pouvez-vous poster du code? Cela devrait être un plugin système autant que je peux dire. –

+0

@Brent Friar - J'ai mis à jour avec mon code. – tpow

Répondre

3

En supposant que votre fichier XML d'installation est correcte, changer le nom de la classe de votre plugin pour plgSystemMyFirst. La convention de dénomination correcte est plg <PluginGroup>PluginName >. J'ai essayé votre code avec le nom correct et cela a très bien fonctionné.