Joomla博客覆盖 - 如何访问子类别中的文章?

时间:2014-09-11 18:11:57

标签: php joomla

我正在为电子商务网站创建一个Joomla博客覆盖,我正在寻求帮助。我想将子类别用作页面上的辅助导航或过滤器,以确定显示哪些文章。它们应该全部显示在同一页面上,一次只显示一个类别(用户选择)。

我可以看到了     $这 - >儿童[$这 - >分类 - > ID] 调用子类别,我只需要帮助弄清楚如何选择子类别的文章。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

这里只是几个基本方向:

正如Brian Boli在评论中所说,这需要javascript。你必须实现它的方式取决于你想要实现的目标。

如果这些只是一些文章,那么你可以像Brian所说的那样,通过调用/加载页面中的所有文章并使用简单的javascript(可能是jQuery)来显示/隐藏页面中的文章元素他们的身份。

但是,如果您的类别包含数百篇文章,那么这可能效率不高。 使用子类别作为过滤器并使所有这些文章出现在同一博客页面/网址中而无需使用导航等重新加载,将需要AJAX实现。因此,subcat过滤器将从数据库中调用亲属文章并立即更新视图。

如果您不满足所有这些,您可以在同一页面上保留即时视图更新的想法,并创建一个可在博客页面上动态工作的简单模块(或可能搜索现有模块)(但不一定),并将显示所有子类别以及指向其博客布局的链接。

更新

获取每个类别的文章:

嗯......你有类别ID,所以你可以直接从数据库中调用文章,或者更好地使用Joomla Model来获取blog_children.php模板中每个类别的文章。

$model = JModelList::getInstance('Articles', 'ContentModel', array('ignore_request'=>true));

$appParams = JFactory::getApplication()->getParams();
$model->setState('params', $appParams);
$model->setState('filter.category_id', $child->id);
$items = $model->getItems();


foreach ($items as $item) {
    echo "<div class='span12'>";
    echo $item->title;
    echo "</div>";
}

希望这会让你更接近你想要达到的目标。