查看: 81|回复: 0

[教程] ecshop调用指定分类的文章的方法介绍

[复制链接]

0

主题

0

回帖

0

积分

积极分子

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2009-5-13
发表于 2023-6-19 00:00:00 | 显示全部楼层 |阅读模式

举例如首页调用方法: 
1、先打开index.php文件找到以下代码: 
$smarty->assign('new_articles', index_get_new_articles()); // 最新文章 
在它下面增加以下: 
//调用方法 
$smarty->assign('class_articles_4', index_get_class_articles(4,6)); // 分类调用文章 
//调用多个就修改传进去的参数,以及模板接收的变量,其中上面的4就是文章分类ID,其中6是调用数量 
$smarty->assign('class_articles_5', index_get_class_articles(5,6)); // 分类调用文章 
$smarty->assign('class_articles_6', index_get_class_articles(6,6)); // 分类调用文章 
$smarty->assign('class_articles_7', index_get_class_articles(7,6)); // 分类调用文章 
$smarty->assign('class_articles_8', index_get_class_articles(8,6)); // 分类调用文章 
2、在lib_goods.php增加以下函数 
/** 
* 获得指定栏目最新的文章列表。 

* @access private 
* @return array 
*/ 
function index_get_class_articles($cat_aid, $cat_num) 

$sql = "SELECT article_id, title,open_type,cat_id,file_url FROM " .$GLOBALS['ecs']->table('article'). " WHERE cat_id = ".$cat_aid." and is_open = 1 LIMIT " . $cat_num; 
$res = $GLOBALS['db']->getAll($sql); 
$arr = array(); 
foreach ($res AS $idx => $row) 

$arr[$idx]['id'] = $row['article_id']; 
$arr[$idx]['title'] = $row['title']; 
$arr[$idx]['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ? 
sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']) : $row['title']; 
$arr[$idx]['cat_name'] = $row['cat_name']; 
$arr[$idx]['add_time'] = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']); 
$arr[$idx]['url'] = $row['open_type'] != 1 ? 
build_uri('article', array('aid' => $row['article_id']), $row['title']) : trim($row['file_url']); 
$arr[$idx]['cat_url'] = build_uri('article_cat', array('acid' => $row['cat_id'])); 

return $arr; 

3、第二步是在index.dwt模板想调用的地方增加以下代码,(注:以下调上面设置里的分类ID为8的文章列表): 
<!--{foreach from=$class_articles_8 item=article}--> 
<li><a href="{$article.url}" /> <!--{/foreach}--> 

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部