Je crée un composant, mais je dois rediriger toutes les demandes entrantes vers le nouveau composant. L'URL ressemble à ceci actuellement: index.php? Option = com_component & view = xxx et lorsque cela se produit, je souhaite remplacer com_component par com_newcomponent, toutes les vues internes sont identiques.
Est-ce possible par un simple plugin?
/**
* Fucntionality which needs to be triggered on After the system has been loaded.
*
* @since 1.0.0
*/
public function onAfterInitialise()
{
$app = JFactory::getApplication();
// Frontend only, otherwise return.
if(!$app->isClient('site'))
{
return false;
}
$router = $app->getRouter();
$callback = array($this, 'buildRoute');
$router->attachBuildRule($callback);
}
public function buildRoute($router, $uri)
{
$routerClone = clone $router;
$vars= $routerClone->parse($uri);
if($vars['option'] == 'com_component1' && $vars['view'] == 'update')
{
$uri->setVar('option', 'com_component_new');
}
}
Vous pouvez utiliser un simple plug-in système, avec l'événement onAfterInitilization () pour effectuer des vérifications très simples, par exemple. isAdmin, est le composant utilisé par com_component et si c'est le cas la redirection