您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop购物车结算提交订单页面显示商品缩略图的方法
依珊2024-01-16Ecshop商城教程已有人查阅
导读ECSHOP系统,在购物车页面,是可以显示商品缩略图的,但是ecshop在订单提交的页面却不支持显示缩略图,好在ECSHOP是开源的,通过以下方法可以实现:
ECSHOP系统,在购物车页面,是可以显示商品缩略图的,但是ecshop在订单提交的页面却不支持显示缩略图,好在ECSHOP是开源的,通过以下方法可以实现:(修改前备份文件,以免出错无法挽回)
步骤一、打开 include/lib_order.php 文件,查找以下代码:
/** * 取得购物车商品 * @param int $type 类型:默认普通商品 * @return array 购物车商品数组 */ function cart_goods($type = CART_GENERAL_GOODS) { $sql = "SELECT rec_id, user_id, goods_id, goods_name, goods_sn, goods_number, " . "market_price, goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, is_shipping, " . "goods_price * goods_number AS subtotal " . "FROM " . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '" . SESS_ID . "' " . "AND rec_type = '$type'"; $arr = $GLOBALS['db']->getAll($sql); /* 格式化价格及礼包商品 */ foreach ($arr as $key => $value) { $arr[$key]['formated_market_price'] = price_format($value['market_price'], false); $arr[$key]['formated_goods_price'] = price_format($value['goods_price'], false); $arr[$key]['formated_subtotal'] = price_format($value['subtotal'], false); if ($value['extension_code'] == 'package_buy') { $arr[$key]['package_goods_list'] = get_package_goods($value['goods_id']); } } return $arr; }
替换为以下代码(注意备份):
/** * 取得购物车商品 * @param int $type 类型:默认普通商品 * @return array 购物车商品数组 */ function cart_goods($type = CART_GENERAL_GOODS) { $sql = "SELECT rec_id, user_id, goods_id, goods_name, goods_sn, goods_number, " . "market_price, goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, is_shipping, " . "goods_price * goods_number AS subtotal " . "FROM " . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '" . SESS_ID . "' " . "AND rec_type = '$type'"; $arr = $GLOBALS['db']->getAll($sql); /* 格式化价格及礼包商品 */ foreach ($arr as $key => $value) { /* LONGHTML 增加是否在购物车里显示商品图 */ if (($GLOBALS['_CFG']['show_goods_in_cart'] == "2" || $GLOBALS['_CFG']['show_goods_in_cart'] == "3") && $row['extension_code'] != 'package_buy') { $goods_thumb = $GLOBALS['db']->getOne("SELECT `goods_thumb` FROM " . $GLOBALS['ecs']->table('goods') . " WHERE `goods_id`=".$arr[$key]['goods_id']); $arr[$key]['goods_thumb'] = get_image_path($arr[$key]['goods_id'], $goods_thumb, true); } // END $arr[$key]['formated_market_price'] = price_format($value['market_price'], false); $arr[$key]['formated_goods_price'] = price_format($value['goods_price'], false); $arr[$key]['formated_subtotal'] = price_format($value['subtotal'], false); if ($value['extension_code'] == 'package_buy') { $arr[$key]['package_goods_list'] = get_package_goods($value['goods_id']); } } return $arr; }
第二步:修改 themes/XXX/flow.dwt 文件; “XXX”为所选择的模板目录。
查找:
<!-- {if $step eq "checkout"} 开始订单确认界面 --> <form action="flow.php" method="post" name="theForm" id="theForm" onsubmit="return checkOrderForm(this)"> <script type="text/javascript"> var flow_no_payment = "{$lang.flow_no_payment}"; var flow_no_shipping = "{$lang.flow_no_shipping}"; </script> <div class="flowBox"> <h6><span>{$lang.goods_list}</span><!--{if $allow_edit_cart} --><a href="flow.php" class="f6">{$lang.modify}</a><!--{/if} --></h6> <table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd"> <tr> <th bgcolor="#ffffff">{$lang.goods_name}</th> <th bgcolor="#ffffff">{$lang.goods_attr}</th> <!-- {if $show_marketprice} --> <th bgcolor="#ffffff">{$lang.market_prices}</th> <!-- {/if} --> <th bgcolor="#ffffff">{if $gb_deposit}{$lang.deposit}{else}{$lang.shop_prices}{/if}</th> <th bgcolor="#ffffff">{$lang.number}</th> <th bgcolor="#ffffff">{$lang.subtotal}</th> </tr> <!-- {foreach from=$goods_list item=goods} --> <tr> <td bgcolor="#ffffff"> <!-- {if $goods.goods_id gt 0 && $goods.extension_code eq 'package_buy'} --> <a href="javascript:void(0)" onclick="setSuitShow({$goods.goods_id})" class="f6">{$goods.goods_name}<span style="color:#FF0000;">({$lang.remark_package})</span></a> <div id="suit_{$goods.goods_id}" style="display:none"> <!-- {foreach from=$goods.package_goods_list item=package_goods_list} --> <a href="goods.php?id={$package_goods_list.goods_id}" target="_blank" class="f6">{$package_goods_list.goods_name}</a><br /> <!-- {/foreach} --> </div> <!-- { else } --> <a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a> <!-- {if $goods.parent_id > 0} --> <span style="color:#FF0000">({$lang.accessories})</span> <!-- {elseif $goods.is_gift} --> <span style="color:#FF0000">({$lang.largess})</span> <!-- {/if} --> <!-- {/if} --> <!-- {if $goods.is_shipping} -->(<span style="color:#FF0000">{$lang.free_goods}</span>)<!-- {/if} --> </td> <td bgcolor="#ffffff">{$goods.goods_attr|nl2br}</td> <!-- {if $show_marketprice} --> <td align="right" bgcolor="#ffffff">{$goods.formated_market_price}</td> <!-- {/if} --> <td bgcolor="#ffffff" align="right">{$goods.formated_goods_price}</td> <td bgcolor="#ffffff" align="right">{$goods.goods_number}</td> <td bgcolor="#ffffff" align="right">{$goods.formated_subtotal}</td> </tr> <!-- {/foreach} --> <!-- {if !$gb_deposit} 团购且有保证金时不显示 --> <tr> <td bgcolor="#ffffff" colspan="7"> <!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} --> {$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!--{/if}--> </td> </tr> <!-- {/if} --> </table>
替换为:
<!-- {if $step eq "checkout"} 开始订单确认界面 --> <form action="flow.php" method="post" name="theForm" id="theForm" onsubmit="return checkOrderForm(this)"> <script type="text/javascript"> var flow_no_payment = "{$lang.flow_no_payment}"; var flow_no_shipping = "{$lang.flow_no_shipping}"; </script> <div class="flowBox"> <h6><span>{$lang.goods_list}</span><!--{if $allow_edit_cart} --><a href="flow.php" class="f6">{$lang.modify}</a><!--{/if} --></h6> <table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd"> <tr> <th bgcolor="#ffffff">商品图片</th> <th bgcolor="#ffffff">{$lang.goods_name}</th> <th bgcolor="#ffffff">{$lang.goods_attr}</th> <!-- {if $show_marketprice} --> <th bgcolor="#ffffff">{$lang.market_prices}</th> <!-- {/if} --> <th bgcolor="#ffffff">{if $gb_deposit}{$lang.deposit}{else}{$lang.shop_prices}{/if}</th> <th bgcolor="#ffffff">{$lang.number}</th> <th bgcolor="#ffffff">{$lang.subtotal}</th> </tr> <!-- {foreach from=$goods_list item=goods} --> <tr> <td bgcolor="#ffffff" align="center"><img style="width:60px; border:1px solid #e3e3e3" src="{$goods.goods_thumb}" border="1" title="{$goods.goods_name|escape:html}"/></td> <td bgcolor="#ffffff"> <!-- {if $goods.goods_id gt 0 && $goods.extension_code eq 'package_buy'} --> <a href="javascript:void(0)" onclick="setSuitShow({$goods.goods_id})" class="f6">{$goods.goods_name}<span style="color:#FF0000;">({$lang.remark_package})</span></a> <div id="suit_{$goods.goods_id}" style="display:none"> <!-- {foreach from=$goods.package_goods_list item=package_goods_list} --> <a href="goods.php?id={$package_goods_list.goods_id}" target="_blank" class="f6">{$package_goods_list.goods_name}</a><br /> <!-- {/foreach} --> </div> <!-- { else } --> <a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a> <!-- {if $goods.parent_id > 0} --> <span style="color:#FF0000">({$lang.accessories})</span> <!-- {elseif $goods.is_gift} --> <span style="color:#FF0000">({$lang.largess})</span> <!-- {/if} --> <!-- {/if} --> <!-- {if $goods.is_shipping} -->(<span style="color:#FF0000">{$lang.free_goods}</span>)<!-- {/if} --> </td> <td bgcolor="#ffffff">{$goods.goods_attr|nl2br}</td> <!-- {if $show_marketprice} --> <td align="right" bgcolor="#ffffff">{$goods.formated_market_price}</td> <!-- {/if} --> <td bgcolor="#ffffff" align="right">{$goods.formated_goods_price}</td> <td bgcolor="#ffffff" align="right">{$goods.goods_number}</td> <td bgcolor="#ffffff" align="right">{$goods.formated_subtotal}</td> </tr> <!-- {/foreach} --> <!-- {if !$gb_deposit} 团购且有保证金时不显示 --> <tr> <td bgcolor="#ffffff" colspan="7"> <!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} --> {$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!--{/if}--> </td> </tr> <!-- {/if} --> </table>
第二步也可以不用这样替换,你可以自己使用以下商品图片调用代码,在自己想要显示的位置插入代码就行了:
<img src="{$goods.goods_thumb}" border="0" title="{$goods.goods_name|escape:html}" />
后台刷新缓存就可以了
步骤一、打开 include/lib_order.php 文件,查找以下代码:
/** * 取得购物车商品 * @param int $type 类型:默认普通商品 * @return array 购物车商品数组 */ function cart_goods($type = CART_GENERAL_GOODS) { $sql = "SELECT rec_id, user_id, goods_id, goods_name, goods_sn, goods_number, " . "market_price, goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, is_shipping, " . "goods_price * goods_number AS subtotal " . "FROM " . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '" . SESS_ID . "' " . "AND rec_type = '$type'"; $arr = $GLOBALS['db']->getAll($sql); /* 格式化价格及礼包商品 */ foreach ($arr as $key => $value) { $arr[$key]['formated_market_price'] = price_format($value['market_price'], false); $arr[$key]['formated_goods_price'] = price_format($value['goods_price'], false); $arr[$key]['formated_subtotal'] = price_format($value['subtotal'], false); if ($value['extension_code'] == 'package_buy') { $arr[$key]['package_goods_list'] = get_package_goods($value['goods_id']); } } return $arr; }
替换为以下代码(注意备份):
/** * 取得购物车商品 * @param int $type 类型:默认普通商品 * @return array 购物车商品数组 */ function cart_goods($type = CART_GENERAL_GOODS) { $sql = "SELECT rec_id, user_id, goods_id, goods_name, goods_sn, goods_number, " . "market_price, goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, is_shipping, " . "goods_price * goods_number AS subtotal " . "FROM " . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '" . SESS_ID . "' " . "AND rec_type = '$type'"; $arr = $GLOBALS['db']->getAll($sql); /* 格式化价格及礼包商品 */ foreach ($arr as $key => $value) { /* LONGHTML 增加是否在购物车里显示商品图 */ if (($GLOBALS['_CFG']['show_goods_in_cart'] == "2" || $GLOBALS['_CFG']['show_goods_in_cart'] == "3") && $row['extension_code'] != 'package_buy') { $goods_thumb = $GLOBALS['db']->getOne("SELECT `goods_thumb` FROM " . $GLOBALS['ecs']->table('goods') . " WHERE `goods_id`=".$arr[$key]['goods_id']); $arr[$key]['goods_thumb'] = get_image_path($arr[$key]['goods_id'], $goods_thumb, true); } // END $arr[$key]['formated_market_price'] = price_format($value['market_price'], false); $arr[$key]['formated_goods_price'] = price_format($value['goods_price'], false); $arr[$key]['formated_subtotal'] = price_format($value['subtotal'], false); if ($value['extension_code'] == 'package_buy') { $arr[$key]['package_goods_list'] = get_package_goods($value['goods_id']); } } return $arr; }
第二步:修改 themes/XXX/flow.dwt 文件; “XXX”为所选择的模板目录。
查找:
<!-- {if $step eq "checkout"} 开始订单确认界面 --> <form action="flow.php" method="post" name="theForm" id="theForm" onsubmit="return checkOrderForm(this)"> <script type="text/javascript"> var flow_no_payment = "{$lang.flow_no_payment}"; var flow_no_shipping = "{$lang.flow_no_shipping}"; </script> <div class="flowBox"> <h6><span>{$lang.goods_list}</span><!--{if $allow_edit_cart} --><a href="flow.php" class="f6">{$lang.modify}</a><!--{/if} --></h6> <table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd"> <tr> <th bgcolor="#ffffff">{$lang.goods_name}</th> <th bgcolor="#ffffff">{$lang.goods_attr}</th> <!-- {if $show_marketprice} --> <th bgcolor="#ffffff">{$lang.market_prices}</th> <!-- {/if} --> <th bgcolor="#ffffff">{if $gb_deposit}{$lang.deposit}{else}{$lang.shop_prices}{/if}</th> <th bgcolor="#ffffff">{$lang.number}</th> <th bgcolor="#ffffff">{$lang.subtotal}</th> </tr> <!-- {foreach from=$goods_list item=goods} --> <tr> <td bgcolor="#ffffff"> <!-- {if $goods.goods_id gt 0 && $goods.extension_code eq 'package_buy'} --> <a href="javascript:void(0)" onclick="setSuitShow({$goods.goods_id})" class="f6">{$goods.goods_name}<span style="color:#FF0000;">({$lang.remark_package})</span></a> <div id="suit_{$goods.goods_id}" style="display:none"> <!-- {foreach from=$goods.package_goods_list item=package_goods_list} --> <a href="goods.php?id={$package_goods_list.goods_id}" target="_blank" class="f6">{$package_goods_list.goods_name}</a><br /> <!-- {/foreach} --> </div> <!-- { else } --> <a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a> <!-- {if $goods.parent_id > 0} --> <span style="color:#FF0000">({$lang.accessories})</span> <!-- {elseif $goods.is_gift} --> <span style="color:#FF0000">({$lang.largess})</span> <!-- {/if} --> <!-- {/if} --> <!-- {if $goods.is_shipping} -->(<span style="color:#FF0000">{$lang.free_goods}</span>)<!-- {/if} --> </td> <td bgcolor="#ffffff">{$goods.goods_attr|nl2br}</td> <!-- {if $show_marketprice} --> <td align="right" bgcolor="#ffffff">{$goods.formated_market_price}</td> <!-- {/if} --> <td bgcolor="#ffffff" align="right">{$goods.formated_goods_price}</td> <td bgcolor="#ffffff" align="right">{$goods.goods_number}</td> <td bgcolor="#ffffff" align="right">{$goods.formated_subtotal}</td> </tr> <!-- {/foreach} --> <!-- {if !$gb_deposit} 团购且有保证金时不显示 --> <tr> <td bgcolor="#ffffff" colspan="7"> <!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} --> {$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!--{/if}--> </td> </tr> <!-- {/if} --> </table>
替换为:
<!-- {if $step eq "checkout"} 开始订单确认界面 --> <form action="flow.php" method="post" name="theForm" id="theForm" onsubmit="return checkOrderForm(this)"> <script type="text/javascript"> var flow_no_payment = "{$lang.flow_no_payment}"; var flow_no_shipping = "{$lang.flow_no_shipping}"; </script> <div class="flowBox"> <h6><span>{$lang.goods_list}</span><!--{if $allow_edit_cart} --><a href="flow.php" class="f6">{$lang.modify}</a><!--{/if} --></h6> <table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd"> <tr> <th bgcolor="#ffffff">商品图片</th> <th bgcolor="#ffffff">{$lang.goods_name}</th> <th bgcolor="#ffffff">{$lang.goods_attr}</th> <!-- {if $show_marketprice} --> <th bgcolor="#ffffff">{$lang.market_prices}</th> <!-- {/if} --> <th bgcolor="#ffffff">{if $gb_deposit}{$lang.deposit}{else}{$lang.shop_prices}{/if}</th> <th bgcolor="#ffffff">{$lang.number}</th> <th bgcolor="#ffffff">{$lang.subtotal}</th> </tr> <!-- {foreach from=$goods_list item=goods} --> <tr> <td bgcolor="#ffffff" align="center"><img style="width:60px; border:1px solid #e3e3e3" src="{$goods.goods_thumb}" border="1" title="{$goods.goods_name|escape:html}"/></td> <td bgcolor="#ffffff"> <!-- {if $goods.goods_id gt 0 && $goods.extension_code eq 'package_buy'} --> <a href="javascript:void(0)" onclick="setSuitShow({$goods.goods_id})" class="f6">{$goods.goods_name}<span style="color:#FF0000;">({$lang.remark_package})</span></a> <div id="suit_{$goods.goods_id}" style="display:none"> <!-- {foreach from=$goods.package_goods_list item=package_goods_list} --> <a href="goods.php?id={$package_goods_list.goods_id}" target="_blank" class="f6">{$package_goods_list.goods_name}</a><br /> <!-- {/foreach} --> </div> <!-- { else } --> <a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a> <!-- {if $goods.parent_id > 0} --> <span style="color:#FF0000">({$lang.accessories})</span> <!-- {elseif $goods.is_gift} --> <span style="color:#FF0000">({$lang.largess})</span> <!-- {/if} --> <!-- {/if} --> <!-- {if $goods.is_shipping} -->(<span style="color:#FF0000">{$lang.free_goods}</span>)<!-- {/if} --> </td> <td bgcolor="#ffffff">{$goods.goods_attr|nl2br}</td> <!-- {if $show_marketprice} --> <td align="right" bgcolor="#ffffff">{$goods.formated_market_price}</td> <!-- {/if} --> <td bgcolor="#ffffff" align="right">{$goods.formated_goods_price}</td> <td bgcolor="#ffffff" align="right">{$goods.goods_number}</td> <td bgcolor="#ffffff" align="right">{$goods.formated_subtotal}</td> </tr> <!-- {/foreach} --> <!-- {if !$gb_deposit} 团购且有保证金时不显示 --> <tr> <td bgcolor="#ffffff" colspan="7"> <!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} --> {$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!--{/if}--> </td> </tr> <!-- {/if} --> </table>
第二步也可以不用这样替换,你可以自己使用以下商品图片调用代码,在自己想要显示的位置插入代码就行了:
<img src="{$goods.goods_thumb}" border="0" title="{$goods.goods_name|escape:html}" />
后台刷新缓存就可以了
本文标签:
很赞哦! ()
相关教程
图文教程
ecshop修改模板记录
在上一篇中给大家带来了ecshop的总体的框架。从总体上看ecshop,相信大家的思路应该很清楚。作为一个对开源项目修改者你来说,能对ecshop有个初步的了解就行了,下面我会给大家带
ecshop支付宝电脑手机H5新版支付接口(自主开发不加密)
ECShop支付宝(Alipay)官方电脑手机H5新版支付接口说明文档,数据安全保障:在整个支付过程中,系统使用HTTPS加密协议传输订单信息,保障用户支付数据的安全性。有效防止数据泄露和恶意攻击,提高支付安全性。
ecshop后台通过ajax搜索
ecshop的搜索其实是功能十分强大的,但是ecshop搜索功能前台和后台还不大一样,前台主要是通过get方式,提交的url进行分页,而在ecshop的后台,则是接受表单的搜索条件,然后通过js发布到ajax
ecshop二次开发步骤教程
本教程适用于了解ECshop和ECshop模板DIY以及它们的日常使用,在查看前阁下需要至少会使用一种编辑器(exp:Dreamweaver, editplus, emacs, vi, ee ...意思就是可视化的HTML编
相关源码
-
(自适应)品牌策划网络设计作品公司个人pbootcms网站源码下载本款基于PbootCMS开发的网站模板专为品牌策划、设计公司打造,特别适合展示创意作品、设计案例和企业服务。模板采用现代化设计风格查看源码 -
(PC+WAP)茶叶茶艺茶道茶文化pbootcms模网站源码下载本模板基于PbootCMS系统开发,为茶叶企业、茶艺培训机构设计,特别适合展示茶产品、茶道文化等内容。采用响应式技术,确保在不同设备上都能呈现优雅的茶文化氛围。查看源码 -
(自适应响应式)高端网站建设设计公司互联网营销网站pbootcms模板本模板基于PbootCMS内核开发,为网站建设公司和互联网营销企业量身打造。采用响应式设计,适配各种移动设备,提供统一的后台管理体验查看源码 -
(自适应)宽屏大气的净水器智能电子设备网站pbootcms源码下载本模板基于PbootCMS内核开发,为净水器设备、智能电子设备企业量身打造,采用响应式设计技术,可快速构建专业级企业官网。通过本模板可高效展示产品技术参数、解决方案及企业服务优势。查看源码 -
(自适应响应式)绿色环保防腐木材轻钢别墅建材pbootcms模板下载本模板为环保防腐木材、轻钢别墅建材类企业设计开发,基于PbootCMS内核构建,充分考虑了建材行业的展示需求与产品特点。模板设计风格自然环保,布局清晰合理,呈现建材产品特性与专业优势,帮助访客直观了解产品特点并建立信任感。查看源码 -
(PC+WAP)蓝色电缆桥架五金钢结构机械PbootCMS模板下载采用PC与WAP双端适配设计,满足桌面设备和移动端访问需求。专注服务于电缆桥架、钢结构及五金机械制造领域,通过结构化布局展示产品特性与技术参数,后台数据一体化管理提升内容维护效率。查看源码
| 分享笔记 (共有 篇笔记) |
