Травега действительно близок, его код работает на страницах, но не на страницах категорий.
Когда вы используете $ id = JRequest :: getString ('id'); на странице категории (такой как блог категории или страница списка) возвращается идентификатор категории.Это означает, что нам нужно больше контекста переменной id, в данном случае «view».
Вот моя модифицированная версия кода Travelga:
function getCategoryName() {
//Modified from: /5354832/pokazat-nazvanie-kategorii-v-shablone
$db = &JFactory::getDBO();
$id = JRequest::getString('id');
$view = JRequest::getString('view');
if ($view == 'category') {
$sql = "SELECT title FROM #__categories WHERE #__categories.id = $id";
} else {
$sql = "SELECT #__categories.title FROM #__content, #__categories WHERE #__content.catid = #__categories.id AND #__content.id = $id";
}
$db->setQuery($sql);
$category = $db->loadResult();
return $category;
}
Другая важная информация:
Я проверял это только на Joomla 2.5.3 на страницах блога и списка кошек.Я не проверял это ни на чем, кроме компонента com_content.Это означает, что он, вероятно, не будет работать с веб-ссылками, контактами и т. Д., Так как вы можете снова потерять контекст.