Использовать JRoute? Предполагая, что вы все еще начинаете с псевдонима, более «Joomla» способ сделать это может выглядеть примерно так:
/* Find article by alias */
$db =& JFactory::getDBO();
$sql = 'select id from #__content where alias=' . $db->quote($alias);
$db->setQuery($sql);
$row = $db->loadAssoc();
$artId = $row['id'];
if ($artId != null) {
$articleUrl = JRoute::_('index.php?option=com_content&view=article&id=' . $artId);
}
Документы для JRoute здесь:
http://api.joomla.org/Joomla-Framework/JRoute.html
Это также позволяет избежать проблем с SQL, которые могут возникнуть, если в вашем псевдониме есть кавычки; o
Я должен также упомянуть, что если вам нужна ссылка на меню - вам нужно иметь бит '& itemid =' в конце пути, передаваемого в JRoute! Конечно, вы не можете получить этот itemid из псевдонима - может быть несколько пунктов меню, указывающих на одну и ту же статью;).