Pour identifier les pages, utilisez le code suivant
if($menu->getActive()->id == 203){} // some actions
cette ligne renvoie une erreur dans la page de recherche. URL de recherche va comme ça
http://localhost/joomla/component/search/?searchword=destination&searchphrase=all&Itemid=103
lorsque la page se charge, l'erreur suivante se produit "Essayer d'obtenir une propriété de non-objet".
C'est parce que $ menu-> getActive () ne renvoie pas d'objet, et c'est parce qu'aucun élément de menu n'est utilisé pour la page de recherche.
Pour vous débarrasser de la notification php que vous voyez, vous pouvez d’abord vérifier si le $ menu-> getActive () est un objet et si oui, obtenir sa propriété id.
ainsi:
if ( is_object( $menu->getActive() ) ) {
//...
}
Je pense que vous pourriez utiliser JInput
pour obtenir le ItemId
.
Essayez d'utiliser ce qui suit:
$jinput = JFactory::getApplication()->input;
$ItemId = $jinput->get('Itemid', '', 'INT');
if ($ItemId == 203)
{
// Something here
}