ecshop2.7.2通过后台控制首页分类下的产品显示

1.首先在ecs_goods表中添加一个字段is_xianshi,该字段的类型和is_hot,is_new等字段样。

2在admin\templates\goods_list.htm中找到

<th><a href="javascript:listTable.sort('is_on_sale'); ">{$lang.is_on_sale}</a>{$sort_is_on_sale}</th>

在上面添加一句

<th><a href="javascript:listTable.sort('is_xianshi'); ">首页显示</a>{$sort_is_xianshi}</th>

 

找到

<td align="center"><img src="images/{if $goods.is_on_sale}yes{else}no{/if}.gif" onclick="listTable.toggle(this, 'toggle_on_sale', {$goods.goods_id})" /></td>

在上面添加一句

<td align="center"><img src="images/{if $goods.is_xianshi}yes{else}no{/if}.gif" onclick="listTable.toggle(this, 'toggle_xianshi', {$goods.goods_id})" /></td>

3.在admin/goods.php中找到

/*------------------------------------------------------ */
//-- 修改上架状态
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'toggle_on_sale')
{
    check_authz_json('goods_manage');

    $goods_id       = intval($_POST['id']);
    $on_sale        = intval($_POST['val']);

    if ($exc->edit("is_on_sale = '$on_sale', last_update=" .gmtime(), $goods_id))
    {
        clear_cache_files();
        make_json_result($on_sale);
    }
}

在这段代码上面添加

/*------------------------------------------------------ */
//-- 修改首页显示状态
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'toggle_xianshi')
{
    check_authz_json('goods_manage');

    $goods_id       = intval($_POST['id']);
    $is_xianshi        = intval($_POST['val']);
    if ($exc->edit("is_xianshi = '$is_xianshi', last_update=" .gmtime(), $goods_id))
    {
        clear_cache_files();
        make_json_result($is_xianshi);
    }
}

4.在admin/includes/lib_goods.php中找到function goods_list($is_delete, $real_goods=1, $conditions = '')在这个方法中找到

$sql = "SELECT goods_id, goods_name, goods_type, goods_sn, shop_price,  is_on_sale, is_best, is_new, is_hot, sort_order, goods_number, integral, " .
                    " (promote_price > 0 AND promote_start_date <= '$today' AND promote_end_date >= '$today') AS is_promote ".
                    " FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE is_delete='$is_delete' $where" .
                    " ORDER BY $filter[sort_by] $filter[sort_order] ".
                    " LIMIT " . $filter['start'] . ",$filter[page_size]";

换成

$sql = "SELECT goods_id, goods_name, goods_type, goods_sn, shop_price, is_xianshi, is_on_sale, is_best, is_new, is_hot, sort_order, goods_number, integral, " .
                    " (promote_price > 0 AND promote_start_date <= '$today' AND promote_end_date >= '$today') AS is_promote ".
                    " FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE is_delete='$is_delete' $where" .
                    " ORDER BY $filter[sort_by] $filter[sort_order] ".
                    " LIMIT " . $filter['start'] . ",$filter[page_size]";

5.includes/lib_goods.php中找到function assign_cat_goods把

$sql = 'SELECT g.goods_id, g.goods_name, g.market_price, g.shop_price AS org_price, ' .
                "IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, ".
               'g.promote_price, promote_start_date, promote_end_date, g.goods_brief, g.goods_thumb, g.goods_img ' .
            "FROM " . $GLOBALS['ecs']->table('goods') . ' AS g '.
            "LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".
                    "ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".
            'WHERE g.is_on_sale = 1 AND g.is_alone_sale = 1 AND '.
                'g.is_delete = 0 AND (' . $children . 'OR ' . get_extension_goods($children) . ') ';

换成

$sql = 'SELECT g.goods_id, g.goods_name, g.market_price, g.shop_price AS org_price, ' .
                "IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, ".
               'g.promote_price, promote_start_date, promote_end_date, g.goods_brief, g.goods_thumb, g.goods_img ' .
            "FROM " . $GLOBALS['ecs']->table('goods') . ' AS g '.
            "LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".
                    "ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".
            'WHERE g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_xianshi = 1 AND '.
                'g.is_delete = 0 AND (' . $children . 'OR ' . get_extension_goods($children) . ') ';

这样就可以了

posted on 2012-09-12 14:33  E壶茶水  阅读(165)  评论(0)    收藏  举报

导航