ecshop category.php页面的自定义排序

作者: 坎肩儿 分类: ecshop网店 发布时间: 2011-07-16 16:17

category.php页面,有其默认的排序方式,但是现在要实现的排序方式:

首页广告位的产品链接地址:category.php?id=3&gid=4(id,是分类ID默认的;gid,是自定义增加的,产品的ID),点击链接进入category.php页面,排序方式为:产品ID为4的排在第一位,其余产品按照默认的排序方式排序。

实现步骤:

1、打开:category.php,修改:

1、查找如下代码:

/* 获得请求的分类 ID */
if (isset($_REQUEST[‘id’]))
{
    $cat_id = intval($_REQUEST[‘id’]);
}
elseif (isset($_REQUEST[‘category’]))
{
    $cat_id = intval($_REQUEST[‘category’]);
}
else
{
    /* 如果分类ID为0,则返回首页 */
    ecs_header(“Location: ./\n”);

    exit;
}

在下面添加:

/* 接受产品ID */
if(isset($_REQUEST[‘gid’]))
{
 $nowStororder = “g.goods_id=”.intval($_REQUEST[‘gid’]).” desc,”;
}
else
{
 $nowStororder = “”;
}

2、查找:

$default_sort_order_type   = $_CFG[‘sort_order_type’] == ‘0’ ? ‘goods_id’ : ($_CFG[‘sort_order_type’] == ‘1’ ? ‘shop_price’ : ‘last_update’);

修改为:

$default_sort_order_type   = $_CFG[‘sort_order_type’] == ‘0’ ? ”.$nowStororder.’goods_id’ : ($_CFG[‘sort_order_type’] == ‘1’ ? ‘shop_price’ : ‘last_update’);

2、首页的广告位添加链接地址的时候要手动,复制当前栏目地址然后将重点推广的产品的ID写在后面,如:category.php?id=(分类ID)&gid=(产品ID)

PS:$nowStororder,添加这个变量的目的,是为了避免在gid为空的时候出错。

OK!问题解决。

相关知识链接:sql 按照某一个指定的值排序