大家是不是在一些商城的产品列表中,产品价格的左侧或右侧看到“新品”“精品”“热销”“促销”“疯抢价”等,这些小图标在整个列表中,除了简单的标示外,实际上也对用户的吸引度起着不小的作用哦,默认的似乎还不够满足我们的需要,带大家一起来制作一个简易的图标效果吧,仅供大家参考哦。
还是以数据库修改为妙,这样做起来会比较快哦。首先我们在商品数据表:ecs_goods中,添加一个新的字段为:goods_icon,不懂的朋友直接运行下面这句:
ALTER TABLE ecs_goods ADD goods_icon char(50) NOT NULL DEFAULT '';
后台运行前,请先自行备份好原数据库。
然后在根目录中找到admin文件夹,修改里面的两个文件如下:
Admin/goods.php
Admin/templets/goods_info.html
1.在goods_info.html中添加一段代码如下:
* 疯抢价小图标: |
疯抢
促销
正常
|
2.在goods.php中找到约
836行,在里面增加一句:
Goods_icon 和'$_POST[goods_icon]'
然后往下搜索数据库里的其中一个字段,比如“is_best”,看下分别在哪些位置出现,我们相应的在那里把新加入的字段加上,应该是有831行左右,850行左右,914行左右三处,修改后点击保存即可。
修改后的代码参考:
第1处:
{
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_style, goods_sn, " .
"cat_id, brand_id, shop_price, market_price, is_promote, promote_price, " .
"promote_start_date, promote_end_date, goods_img, goods_thumb, original_img, keywords, goods_brief, " .
"seller_note, goods_weight, goods_number, warn_number, integral, give_integral, is_best, is_new, is_hot, " .
"is_on_sale, is_alone_sale, is_shipping, goods_desc, add_time, last_update, goods_type, rank_integral, seo_title, suppliers_id, goods_icon)" .
"VALUES ('$_POST[goods_name]', '$goods_name_style', '$goods_sn', '$catgory_id', " .
"'$brand_id', '$shop_price', '$market_price', '$is_promote','$promote_price', ".
"'$promote_start_date', '$promote_end_date', '$goods_img', '$goods_thumb', '$original_img', ".
"'$_POST[keywords]', '$_POST[goods_brief]', '$_POST[seller_note]', '$goods_weight', '$goods_number',".
" '$warn_number', '$_POST[integral]', '$give_integral', '$is_best', '$is_new', '$is_hot', '$is_on_sale', '$is_alone_sale', $is_shipping, ".
" '$_POST[goods_desc]', '" . gmtime() . "', '". gmtime() ."', '$goods_type', '$rank_integral','$_POST[seo_title]', '$suppliers_id', '$_POST[goods_icon]')";
}
第2处:
{
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_style, goods_sn, " .
"cat_id, brand_id, shop_price, market_price, is_promote, promote_price, " .
"promote_start_date, promote_end_date, goods_img, goods_thumb, original_img, keywords, goods_brief, " .
"seller_note, goods_weight, goods_number, warn_number, integral, give_integral, is_best, is_new, is_hot, is_real, " .
"is_on_sale, is_alone_sale, is_shipping, goods_desc, add_time, last_update, goods_type, extension_code, rank_integral, seo_title, goods_icon)" .
"VALUES ('$_POST[goods_name]', '$goods_name_style', '$goods_sn', '$catgory_id', " .
"'$brand_id', '$shop_price', '$market_price', '$is_promote','$promote_price', ".
"'$promote_start_date', '$promote_end_date', '$goods_img', '$goods_thumb', '$original_img', ".
"'$_POST[keywords]', '$_POST[goods_brief]', '$_POST[seller_note]', '$goods_weight', '$goods_number',".
" '$warn_number', '$_POST[integral]', '$give_integral', '$is_best', '$is_new', '$is_hot', 0, '$is_on_sale', '$is_alone_sale', $is_shipping, ".
" '$_POST[goods_desc]', '" . gmtime() . "', '". gmtime() ."', '$goods_type', '$code', '$rank_integral','$_POST[seo_title]', '$_POST[goods_icon]')";
}
第3处:
$sql .= "keywords = '$_POST[keywords]', " .
"goods_brief = '$_POST[goods_brief]', " .
"seller_note = '$_POST[seller_note]', " .
"goods_weight = '$goods_weight'," .
"goods_number = '$goods_number', " .
"warn_number = '$warn_number', " .
"integral = '$_POST[integral]', " .
"give_integral = '$give_integral', " .
"rank_integral = '$rank_integral', " .
"seo_title='$_POST[seo_title]'," .
"goods_icon='$_POST[goods_icon]'," .
"is_best = '$is_best', " .
"is_new = '$is_new', " .
"is_hot = '$is_hot', " .
"is_on_sale = '$is_on_sale', " .
"is_alone_sale = '$is_alone_sale', " .
"is_shipping = '$is_shipping', " .
"goods_desc = '$_POST[goods_desc]', " .
"last_update = '". gmtime() ."', ".
"goods_type = '$goods_type' " .
"WHERE goods_id = '$_REQUEST[goods_id]' LIMIT 1";
这时候我们到后台选择其中一个商品,进行修改,看看数据库里能否正常接收到值,如果正常,说明前面的操作OK。下面是显示环节了,还需要修改include/lib_goods.php 文件,找到第1527行和1586行左右,在代码最开始分别增加我们新的变量,参考代码如下:
第1处:
$sql = 'SELECT g.goods_icon,g.goods_id,g.cat_id,c.parent_id,g.goods_name, g.goods_name, g.goods_name_style, g.market_price, g.shop_price AS org_price, g.promote_price, ' .
第2处:
// 增加疯抢价图标 2013-6-26
$goods[$idx]['goods_icon'] = $row['goods_icon'];
OK,解决了这里,基本上就是调用了。在首页模板或库文件中,可以这样判断调用:
{if $goods.goods_icon eq 'fengqiang'}
{/if}
{if $goods.goods_icon eq 'chuxiao'}
{/if}
{if $goods.goods_icon eq 'zhengchang'}
{/if}
{$goods.shop_price}{$goods.market_price}
本文只是提供代码实现参考,样式需要大家自行处理哦。