2016-05-18 9 views

Antwort

3

Sie können das Plug-in Systemereignis onAfterInitialise() verwenden.

Verwenden Sie diese URL für Ajax: index.php?type=mymethod

Dies führt zu:

function onAfterInitialise() { 
    $jinput = JFactory::getApplication()->input; 

    if($jinput->get('type')=='mymethod') { 

    // your code here 

    } 

} 
+1

Diese Antwort sollte akzeptiert werden .. –

+1

aber diese Methode kann diese benutzerdefinierte Funktion für alle von url aufrufen ??? –

1

Der Link ist ok. Sie müssen nur den Ordnernamen von Ajax in System ändern. Vor Joomla 3.4 war es notwendig, das Plugin in den Ajax-Ordner zu legen, aber jetzt können Sie es in einen beliebigen Ordner legen. Ihr Code sieht dann folgendermaßen aus:

JPluginHelper::importPlugin('system'); 
$plugin  = ucfirst($input->get('plugin')); 
$dispatcher = JEventDispatcher::getInstance(); 

try 
{ 
    $results = $dispatcher->trigger('myMethod' . $plugin); 
} 
catch (Exception $e) 
{ 
    $results = $e; 
} 

Folgen Sie den dort angegebenen Ruheanweisungen.