在 Joomla 3 中按文章 ID 过滤博客类别中的文章
Filter articles in blog category by article id in Joomla 3
在 category.php 模型中,有一堆 $model->setState 过滤器,用于调整文章的输出。
我正在尝试添加新的 setState,它将按给定的 ID 过滤文章的输出
$model->setState('filter.id', $params->get('id_articles', array());
但仍然不会过滤。所以我尝试使用直接 ID 输入:
$model->setState('filter.id', '280');
而且,输出根本没有被过滤。
为了确定这种过滤器是否有效,我修改了精选文章的模型->setState:
$model->setState('filter.featured', 'only');
这证明 $model->setState 可以正常工作,但它不接受按文章 ID 过滤。
有什么想法吗?谢谢!
在您的 populateState() 方法中将状态设置为:
$articleIds = explode(',', $params->get('id_articles'));
$this->setState('filter.article_id', $articleIds);
$this->setState('filter.article_id', $articleIds);
然后在您的 getItems() 方法中将模型中的状态设置为:
$model->setState('filter.article_id', $this->getState('filter.article_id'));
你会得到想要的结果。
在 category.php 模型中,有一堆 $model->setState 过滤器,用于调整文章的输出。
我正在尝试添加新的 setState,它将按给定的 ID 过滤文章的输出
$model->setState('filter.id', $params->get('id_articles', array());
但仍然不会过滤。所以我尝试使用直接 ID 输入:
$model->setState('filter.id', '280');
而且,输出根本没有被过滤。
为了确定这种过滤器是否有效,我修改了精选文章的模型->setState:
$model->setState('filter.featured', 'only');
这证明 $model->setState 可以正常工作,但它不接受按文章 ID 过滤。
有什么想法吗?谢谢!
在您的 populateState() 方法中将状态设置为:
$articleIds = explode(',', $params->get('id_articles'));
$this->setState('filter.article_id', $articleIds);
$this->setState('filter.article_id', $articleIds);
然后在您的 getItems() 方法中将模型中的状态设置为:
$model->setState('filter.article_id', $this->getState('filter.article_id'));
你会得到想要的结果。