求首页文章调用修改代码和方法

2016-07-07 16:02 来源:www.chinab4c.com 作者:ecshop专家

像图片上的显示方式 QQ截图20130506102004.png

回答:
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是调用数量
2、在lib_goods.php增加以下函数
  1. /**
  2. * 获得指定栏目最新的文章列表。
  3. *
  4. * @access private
  5. * @return array
  6. */
  7. function index_get_class_articles($cat_aid, $cat_num)
  8. {
  9. $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;
  10. $res = $GLOBALS['db']->getAll($sql);
  11. $arr = array();
  12. foreach ($res AS $idx => $row)
  13. {
  14. $arr[$idx]['id'] = $row['article_id'];
  15. $arr[$idx]['title'] = $row['title'];
  16. $arr[$idx]['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ?
  17. sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']) : $row['title'];
  18. $arr[$idx]['cat_name'] = $row['cat_name'];
  19. $arr[$idx]['add_time'] = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']);
  20. $arr[$idx]['url'] = $row['open_type'] != 1 ?
  21. build_uri('article', array('aid' => $row['article_id']), $row['title']) : trim($row['file_url']);
  22. $arr[$idx]['cat_url'] = build_uri('article_cat', array('acid' => $row['cat_id']));
  23. }
  24. return $arr;
  25. }
复制代码
3、第二步是在index.dwt模板想调用的地方增加以下代码,(注:以下调上面设置里的分类ID为8的文章列表):
  1. <!--{foreach from=$class_articles_8 item=article}-->
  2. <li><a href="{$article.url}" title="{$article.title|escape:html}"><!--{$article.short_title|truncate:15:true}--></a></li>
  3. <!--{/foreach}-->
复制代码

1、先打开index.php文件找到以下代码:
$smarty->assign('new_articles', index_get_new_articles()); // ...
彩色奶酪 发表于 2013-5-6 09:36



支持下吧,写的挺好的。就是这样的

编程能力不错哦 顶一下

不错!!!!!

非常感谢

不错,2楼的方法解决了,谢谢

好,应该顶,今后继续努力












dekaron RMT|メイプル RMT|lineage RMT