Şimdiye kadar en çok rahatsız bir şekilde burada tekerleği yeniden icat ediyorum. Ben bu bir gün kırmak ve bana acı bir sürü neden olacağını boğazımda hissediyorum. Bu nedenle bir makale takma ad almak ve menü öğesi url veya makale url ya inşa etmek için daha iyi bir yol arıyorum. Bu kolay / temizleyici / daha geleceğe dönük yapmak hiçbir joomla API çağrıları var mı?
/* Find article by alias */
$db =& JFactory::getDBO();
$sql = 'select id from #__content where alias=' . "'$alias'";
$db->setQuery($sql);
$row = $db->loadAssoc();
$artId = $row['id'];
if ($artId != null) {
$artLink = 'index.php?option=com_content&view=article&id='.$artId;
/* Find menu item by article id */
$sql = 'select parent,alias from #__menu where link=' . "'$artLink'";
$db->setQuery($sql);
$row = $db->loadAssoc();
$menuLink = '';
while ($row != null) {
$menuLink = '/' . $row['alias'] . $menuLink;
$sql = 'select parent,alias from #__menu where id=' . $row['parent'];
$db->setQuery($sql);
$row = $db->loadAssoc();
}
$menuLink = 'index.php' . $menuLink;
}
$articleUrl = ($menuLink != '') ? 'index.php' . $menuLink : JRoute::_($artLink);