2013-03-07 91 views
2

我最近遇到了一个问题,当想要显示某个类别(或子类别)与其子文章,同时包括类别描述和图像。通常用于此的模块是Articles Category。Joomla 3文章类别模块覆盖类别图像和说明

我想要实现:

Example of good layout 但是实际上,我结束了:

Example of real output 当试图调用类别描述或图像我得到的错误,而他们还没有已存储,只有类别名称及其项目(甚至没有链接到类别)

任何想法,如果有一个覆盖的可能性,使这项工作,或另一个模块,做的伎俩?

中的Joomla 3.0.3 mod_articles_category默认的文件:http://pastebin.com/8pNeQyzn

+0

此布局是否在模板重写中完成?如果是的话,你可以包括代码吗? – 2013-03-07 10:07:55

+0

它最初是在核心文件中完成的,但我正在寻找覆盖的可能性。虽然已经找到它,但请检查更新的答案 – xaddict 2013-03-07 10:12:47

+0

您的更新答案不应该是最简单的方法!它应该更直接更简单你可以粘贴完整的default.php文件(在这些数据库更改之前)吗? – 2013-03-07 13:18:24

回答

4

解决:

创建的覆盖mod_articles_category/TMPL /如default.php 寻找这一行中mod_articles_category /如default.php:

<?php foreach ($list as $group_name => $group) : ?> 

而且在它下面添加以下内容:

<?php 
    // Get a db connection. 
    $db = JFactory::getDbo(); 
    // Create a new query object. 
    $query = $db->getQuery(true); 
    $query 
     ->select(array('title, description, params')) 
     ->from('#__categories') 
     ->where('title = \''.$group_name.'\'') 
     ->where('extension = \'com_content\'') 
     ->where('published = \'1\''); 
    // Reset the query using our newly populated query object. 
    $db->setQuery($query); 
    // Load the result(1) as an object. 
    $cat = $db->loadObject(); 
    $catparams = json_decode($cat->params); 
?> 

现在,您可以通过回字段访问标题,描述和类别参数(包括图像),例如:

<?= $cat->description ?> 

<?= ($catparams->image) ? $catparams->image : "No image"; ?> 

我接受后不会有一个简单的方法来做到这一点,我发现这很快。

+0

谢谢你分享这个,我用这个做了类似的改变。 – 2013-04-15 15:44:21

+0

这是有帮助的,但我不得不将''' - > where('title = \''。$ group_name。'\'')'''改为''' - > where('title =“'。$ group_name。'“')'''让它工作 – Piero 2015-01-09 14:06:34