В свое время была у меня задача — зная SEF-ссылку (для стандартного компонента SEF) получить оригинальную ссылку и надо признаться тогда я ее так и не решил. Однако недавно, изучая класс JRouter, я нашел решение этой задачи. Даже как-то обидно стало, что тогда не решил.
А решается задача проще простого:
getRouter(); // массив переменных запроса $vars = $router->parse($uri); $parts = array(); foreach($vars as $k => $v) { $parts[] = $k . '=' . $v; } // оригинальная (не SEF) ссылка $nonSefUrl = JURI::base() . 'index.php?' . implode('&', $parts); ?>
Однако следует обратить внимание, что если вам требуется получить какие-то параметры из текущей ссылки, данный код будет работать только при условии, что событие onAfterRoute уже вызвано!
Вот и все, будут вопросы - готов ответить у нас на форуме!