从类别(由ID指定)显示文章的代码是什么?
在Wordpress中,通过这样做很容易:
<?php
query_posts('cat=1');
while (have_posts()) : the_post();
the_title();
endwhile;
?>
我正在为Joomla寻找类似的代码。
答案 0 :(得分:10)
$db = JFactory::getDbo();
$id = 50;//example
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__content');
$query->where('catid="'.$id.'"');
$db->setQuery((string)$query);
$res = $db->loadObjectList();
foreach($res as $r){
echo '<h3>'.$r->title.'</h3>';
echo $r->introtext;
}
答案 1 :(得分:5)
您可以使用下一个代码模板:
$categoryId = $[category id];
require_once("components/com_content/models/category.php");
$category = new ContentModelCategory();
$category->hit($categoryId);
$articles = $category->getItems();
print_r($articles);
答案 2 :(得分:2)
没有直接的代码可以在joomla中获得这个,如word press。
如果您想检查代码,可以通过以下路径检查代码以实现此目的。
components/com_content/view/category/view.html.php
and
components/com_content/view/category/tmpl/blog.php
根据我的猜测,您的要求是显示同一类别的文章。
然后在joomla你不需要编辑任何代码。 为实现这一目标,您只需创建一个菜单即可。 和菜单布局类型应该是类别博客,并从右侧类别选项中选择您的类别。
这将获得该类别的完整文章。
如果您想以自己的风格进行管理,可以根据blog.php文件添加样式。
希望这会对你有帮助..
答案 3 :(得分:2)
试试这个:
$articles = JFactory::getDBO()->setQuery("SELECT * FROM #__content WHERE catid = '21'")->loadObjectList();
当然用你的类别的id替换'21'。
答案 4 :(得分:0)
在Joomla中这很容易。您可以在 getItems()
下的 /components/com_content/models/category.php 中找到代码。下面是一个例子
$model = JModelLegacy::getInstance('Articles', 'ContentModel', array('ignore_request' => true));
$model->setState('params', JFactory::getApplication()->getParams());
$model->setState('filter.category_id', $category_id);
$articles = $model->getItems();