网站地图    收藏   

主页 > 后端 > ecshop教程 >

ECSHOP 文章排序问题 按照发布时间排序 按照文章

来源:自学PHP网    时间:2014-11-28 23:31 作者: 阅读:

[导读] 最近在网上看到很多朋友在咨询ECSHOP首页调用文章,但是文章按照发布时间递增排序的解决方法,今天和大家分享一下我们的解决方法 首页要调用制定栏目的文章,相信问这个问题的朋友一...

ECSHOP 文章排序问题 按照发布时间排序 按照文章

最近在网上看到很多朋友在咨询ECSHOP首页调用文章,但是文章按照发布时间递增排序的解决方法,今天和大家分享一下我们的解决方法.

首页要调用制定栏目的文章,相信问这个问题的朋友一定对下边的代码不会陌生:

  1. function index_get_class_articles($cat_aid$cat_num
  2.     $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
  3.     $res = $GLOBALS['db']->getAll($sql); 
  4.     $arr = array(); 
  5.     foreach ($res AS $idx => $row
  6.     { 
  7.         $arr[$idx]['id']          = $row['article_id']; 
  8.         $arr[$idx]['title']       = $row['title']; 
  9.         $arr[$idx]['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ? 
  10.                                         sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']) : $row['title']; 
  11.         $arr[$idx]['cat_name']    = $row['cat_name']; 
  12.         $arr[$idx]['add_time']    = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']); 
  13.         $arr[$idx]['url']         = $row['open_type'] != 1 ? 
  14.                                         build_uri('article'array('aid' => $row['article_id']), $row['title']) : trim($row['file_url']); 
  15.         $arr[$idx]['cat_url']     = build_uri('article_cat'array('acid' => $row['cat_id'])); 
  16.     } 
  17.     return $arr

只要我们对里的代理进行适当的修改一下,文章排序问题就解决了,我们是按照文章ID来进行降序排列的,代码如下:

  1. function index_get_class_articles($cat_aid$cat_num
  2.     $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 order by article_id desc LIMIT 0," . $cat_num
  3.     $res = $GLOBALS['db']->getAll($sql); 
  4.     $arr = array(); 
  5.     foreach ($res AS $idx => $row
  6.     { 
  7.         $arr[$idx]['id']          = $row['article_id']; 
  8.         $arr[$idx]['title']       = $row['title']; 
  9.         $arr[$idx]['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ? 
  10.                                         sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']) : $row['title']; 
  11.         $arr[$idx]['cat_name']    = $row['cat_name']; 
  12.         $arr[$idx]['add_time']    = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']); 
  13.         $arr[$idx]['url']         = $row['open_type'] != 1 ? 
  14.                                         build_uri('article'array('aid' => $row['article_id']), $row['title']) : trim($row['file_url']); 
  15.         $arr[$idx]['cat_url']     = build_uri('article_cat'array('acid' => $row['cat_id'])); 
  16.     } 
  17.     return $arr

其实很简单,很多朋友都知道了方法,但是有一点小细节没有注意到,那就是LIMIT 0," . $cat_num;很多朋友都忽视这里,因为默认的LIMIT " . $cat_num;是这样,但是当我们加上order by article_id desc这个排序的功能后,那么LIMIT后边就必须加上0,来进行限制了.

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论