修改了排序,翻页不行了。

2016-07-07 15:00 来源:www.chinab4c.com 作者:ecshop专家



原来的是:
  1. $default_sort_order_type= $_CFG['sort_order_type'] == '0' ? 'goods_id' : ($_CFG['sort_order_type'] == '1' ? 'shop_price' : 'last_update');
复制代码



现在修改为:
  1. $default_sort_order_type= $_CFG['sort_order_type'] == '0' ? 'g.is_on_sale and g.goods_number>0 desc,g.sort_order desc,g.goods_id desc,g.goods_number' : ($_CFG['sort_order_type'] == '1' ? 'shop_price' : 'last_update');
复制代码



现在点击第二页,就打不开了。主要是多了一个 and g.goods_number>0 我将这个去掉就可以了。 但是因为我想让库存多的排在前面。所以这个还是不能去掉的。不知道是不是需要修改重写url的函数.我贴出部分,请大家帮忙看看:

  1. switch ($app)
  2. {
  3. case 'category':
  4. if (empty($cid))
  5. {
  6. return false;
  7. }
  8. else
  9. {
  10. if ($rewrite)
  11. {
  12. $uri = 'category-' . $cid;
  13. 省掉部分代码...
  14. if(!is_null($is_on_sale) && $is_on_sale<>"")
  15. {
  16. $uri .= '-sale' . $is_on_sale;
  17. }


  18. }
  19. else
  20. {

  21. $uri = 'category.php?id=' . $cid;
  22. if(!is_null($is_on_sale) && $is_on_sale<>"")
  23. {
  24. $uri .= '&is_on_sale='.((intval($is_on_sale)>0)?1:0 );
  25. }
复制代码

回答:
is_rewrite http.ini:对于的规则:
RewriteRule ^(.*)/category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)-([0-9]+)-(.+)-([a-zA-Z]+)-sale([0-9]+)(.*)\.html$$1/category\.php\?id=$2&brand=$3&price_min=$4&price_max=$5&filter_attr=$6&page=$7&sort=$8&order=$9&is_on_sale=$10 [I]