我正在尝试在模块位置中显示类别名称。在模板中显示类别名称
我想:
<?php echo $listing['Category']['title'];?>
它没有工作。
我跟着this link,但它显示文章标题和我需要的类别之一。 我正在Joomla 1.7上工作。
我正在尝试在模块位置中显示类别名称。在模板中显示类别名称
我想:
<?php echo $listing['Category']['title'];?>
它没有工作。
我跟着this link,但它显示文章标题和我需要的类别之一。 我正在Joomla 1.7上工作。
按照海报在OP评论:
<?php
$db = &JFactory::getDBO();
$id = JRequest::getString('id');
$db->setQuery('SELECT #__categories.title FROM #__content, #__categories WHERE #__content.catid = #__categories.id AND #__content.id = '.$id);
$category = $db->loadResult();
echo $category;
?>
Travega是真的很近,他的代码工作在页面上,但不能在类别页面。
当您使用$ id = JRequest :: getString('id');在类别页面(例如类别博客或列表页面)上返回该类别的标识。这意味着我们需要更多的id变量上下文,在这种情况下,'视图'。
这里是我的travega的代码修改后的版本:
function getCategoryName() {
//Modified from: http://stackoverflow.com/questions/8928967/joomla-display-catagory-name-in-template
$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组件之外,我还没有测试过它。这意味着它可能不适用于网页链接,联系人等页面,因为您可能会再次松散上下文。
更简单的答案:
<?php echo $this->escape($this->item->category_title);?>
得到了答案。虽然sombody可能会受益于它在这里。 <?php $ db =&JFactory :: getDBO(); $ id = JRequest :: getString('id'); $ db-> setQuery('SELECT #__ categories.title FROM #__content,#__categories WHERE #__ content.catid = #__ categories.id AND #__ content.id ='。$ id); $ category = $ db-> loadResult(); echo $ category; ?> 欢呼声 – user1154641
您好user1154641,请将上述内容作为回答发布并标记为已解决。所以其他有需要的人可以很容易地发现它。 :) – saji89