getRouter('site'); if (!$router) { return $url; } $uri = $router->build($url); $url = $uri->toString(); $url = str_replace('/administrator/', '/', $url); return $url; } public static function removeItemId($url) { $url = preg_replace('#&Itemid=[0-9]+#', '', $url); return $url; } public static function removeHomeItemId($url) { if (strpos($url, 'Itemid') === false) { return $url; } $parsed = parse_url($url, PHP_URL_QUERY); $parsed = str_replace('&', '&', $parsed); parse_str($parsed, $vars); if (!array_key_exists('Itemid', $vars)) { return $url; } // get menus $menus = JFactory::getApplication()->getMenu('site'); // get "default" menu $default = $menus->getDefault(); // Itemid is unique if ($default->id != $vars['Itemid']) { return $url; } // remove "default" Itemid $url = self::removeItemId($url); return $url; } }