您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop多货币切换插件,多货币切换二次开发教程教程
易堃登2024-01-01Ecshop商城教程已有人查阅
导读1、首先在我们的后台网店设置里要添加汇率转换的功能,如何添加网店功能自己摸索一下,你要把添加的功能插入表里。我们的汇率都是和美元进行转换的。
1、首先在我们的后台网店设置里要添加汇率转换的功能,如何添加网店功能自己摸索一下,你要把添加的功能插入表里。我们的汇率都是和美元进行转换的。
2、开始前台实现:首先我们在首页加上多语言的链接如图:
我们看下他的url
我在init.php的最后加入
4、 我们通过以上操作至少在每个页面可以搞定客户选的货币是什么,下来我们就考虑如何解决显示问题,如果每个页面都修改显示goods价格那多麻烦啊,我们熟 悉ecshop的朋友不难想到我们所有显示的价格都是在一个函数里进行里处理 ,这应该感谢官方的技术人员 代码写的好 当然是 lib_common.php里得price_format()这个函数 我们想一下 如果在这搞定是不是所有显示都搞定了 我们就从这入手 以下是我修改后的函数
5、 有关交易 后台的操作我做简单的介绍 我们只是解决了显示问题 其实我们实质的数据还是美元 在我们提交订单的时候 我们在order_goods表加俩个字段一个是客户选的货币方式 这样生成订单后 当我进入我的会员中心我依然可以看到我购买人民币是多少钱 我们读取数据库的方式进行换算,另外一个字段是我们换算后的金额。当然我们之前美元的总金额都是在的 。在支付的时候 我们给贝宝付参数 就是货币类型 。搞定。
2、开始前台实现:首先我们在首页加上多语言的链接如图:
我们看下他的url
<ul>
<li><a href="{$url_head}¤cy=USD"><img src="images/USD.gif"> US Dollar</a></li>
<li><a href="{$url_head}¤cy=EUR"><img src="images/EUR.gif"> Euro</a></li>
<li><a href="{$url_head}¤cy=GBP"><img src="images/GBP.gif"> British Pound</a></li>
<li><a href="{$url_head}¤cy=CNY"><img src="images/CNY.gif"> China RMB</a></li>
<li><a href="{$url_head}¤cy=aUD"><img src="images/aUD.gif"> austrilian Dollar</a></li>
</ul>
这个{$url_head} 我是重新建了一个文件 conn.php放到首页 每个文件调用
//路径处理
$url_this = "[url=http://]http://".$_SERVER[/url] ['HTTP_HOST'].$_SERVER['PHP_SELF']."?id=".$_GET['id'];
$smarty->assign("url_head",$url_this);
3、我们发现都是在每个页面后面传了一次get值 那么在那接这些get值呢 我们肯定要找每个页面的共同文件 不难想到init.php我在init.php的最后加入
[code]$currency = $_GET['currency'];
if($currency!=""){
$_SESSION['currency'] = $currency;
}
if($_SESSION['currency'] == '')
{
$_SESSION['currency'] = 'USD';
}
这个代码大家明白吧 我接到get值后 给了session 如果session不存在话 我们默认就是usd 这样每个页面都可以获得当前的session值 .4、 我们通过以上操作至少在每个页面可以搞定客户选的货币是什么,下来我们就考虑如何解决显示问题,如果每个页面都修改显示goods价格那多麻烦啊,我们熟 悉ecshop的朋友不难想到我们所有显示的价格都是在一个函数里进行里处理 ,这应该感谢官方的技术人员 代码写的好 当然是 lib_common.php里得price_format()这个函数 我们想一下 如果在这搞定是不是所有显示都搞定了 我们就从这入手 以下是我修改后的函数
function price_format($price, $change_price = true)
{
$currency = $_SESSION['currency'];
$rate = explode(',',$GLOBaLS['_CFG']['rate']);
if($currency == 'USD')
{
$price = $price*$rate[0];
}
if($currency == 'CNY')
{
$price = $price*$rate[3];
}
if($currency == 'EUR')
{
$price = $price*$rate[1];
}
if($currency == 'GBP')
{
$price = $price*$rate[2];
}
if($currency == 'aUD')
{
$price = $price*$rate[4];
}
if ($change_price && defined('ECS_aDMIN') === false)
{
switch ($GLOBaLS['_CFG']['price_format'])
{
case 0:
$price = number_format($price, 2, '.', '');
break;
case 1: // 保留不为 0 的尾数
$price = preg_replace('/(.*)(\\.)([0-9]*?)0+$/', '\1\2\3', number_format($price, 2, '.', ''));
if (substr($price, -1) == '.')
{
$price = substr($price, 0, -1);
}
break;
case 2: // 不四舍五入,保留1位
$price = substr(number_format($price, 2, '.', ''), 0, -1);
break;
case 3: // 直接取整
$price = intval($price);
break;
case 4: // 四舍五入,保留 1 位
$price = number_format($price, 1, '.', '');
break;
case 5: // 先四舍五入,不保留小数
$price = round($price);
break;
}
}
else
{
$price = number_format($price, 2, '.', '');
}
switch ($currency)
{
case 'USD':
return sprintf($GLOBaLS['_CFG']['currency_format'], $price);
break;
case 'CNY':
return sprintf($GLOBaLS['_CFG']['cprice_format'], $price);
break;
case 'EUR':
return sprintf($GLOBaLS['_CFG']['aprice_format'], $price);
break;
case 'GBP':
return sprintf($GLOBaLS['_CFG']['ybprice_format'], $price);
break;
case 'aUD':
return sprintf($GLOBaLS['_CFG']['aoprice_format'], $price);
break;
}
}
$rate = explode(',',$GLOBaLS['_CFG']['rate']);
这句是从数据库获得我们当时的参数 然后我们计算 同时返回值的时候我们用了系统设置的符号 解决问题 前台就这样搞定。5、 有关交易 后台的操作我做简单的介绍 我们只是解决了显示问题 其实我们实质的数据还是美元 在我们提交订单的时候 我们在order_goods表加俩个字段一个是客户选的货币方式 这样生成订单后 当我进入我的会员中心我依然可以看到我购买人民币是多少钱 我们读取数据库的方式进行换算,另外一个字段是我们换算后的金额。当然我们之前美元的总金额都是在的 。在支付的时候 我们给贝宝付参数 就是货币类型 。搞定。
本文标签:
很赞哦! ()
图文教程
ecshop首页显示不同会员等级不同折扣价格的方法
近期很多朋友都问了一些二次开发的问题,在此会不定期的分享一些二次开发的教程给大家参考。今天就介绍一下ecshop不同
ipad等智能机访问ecshop网站不跳转wap的修复方法
打开ecshop文件,找到修改index.php找到 $ua = strtolower($_SERVER['HTTP_USER_AGENT']); 做如下代码修改(增加了普通手机的ua代码
ecshop商城让所有页面都显示新文章提高SEO优化的实现方法
ecshop商城让所有页面都显示很新文章提高SEO优化效果。代码号代码号之商城提高SEO优化效果:ECSHOP商城让所有页面都显示很新文章提高文章收录。
ecshop移动端支付宝支付接口对接实例
初始页,提交基本信息到api页面,进入API页,获取表单数据和配置数据,发起移动支付请求,上面是配置内容,支付后,调整到处理页面
相关源码
-
(自适应)大气网络公司工作室个人作品展示网站模板免费下载基于PbootCMS内核开发的响应式网站模板,为网络技术服务类企业打造,具备高度可定制性。通过简洁现代的设计语言展现企业专业形象,后台数据实时同步机制确保多终端内容一致性,查看源码 -
(自适应响应式)个人作品技术文章博客网站模板下载基于PbootCMS内核开发的响应式博客模板,为数字营销、技术分享类内容打造。采用前沿设计理念,兼顾内容展示与阅读体验,适配各类终端设备。通过本模板可快速构建专业级行业博客,有效传播专业知识与案例成果。查看源码 -
自适应营销型IT网络工作室互联网建站公司pbootcms网站模板为IT网络服务商、建站企业打造的高性能营销门户,基于PbootCMS开源内核深度开发采用HTML5自适应架构,实现PC与手机端数据实时同步交互。查看源码 -
(自适应)帝国cms7.5模板新闻资讯门户带会员中心基于帝国CMS7.5内核开发的HTML5响应式模板,为新闻机构、媒体门户及资讯聚合平台设计。通过模块化布局实现图文混排查看源码 -
(自适应)蓝色环保科技设备带三级栏目网站模板下载该模板为环保科技企业设计,提供专业的产品展示与技术服务平台。采用响应式布局,适配环保设备、清洁技术等应用场景,通过可视化后台可快速搭建符合行业特性的展示网站。查看源码 -
(PC+WAP)蓝色钢材加工建筑装修施工材料网站模板下载为钢材加工企业设计的PbootCMS响应式模板,采用PC+WAP双端适配技术,数据实时同步。简洁大气的蓝色工业风格设计,突出钢材加工行业特性,其他制造业用户更换图文内容即可快速应用。查看源码
| 分享笔记 (共有 篇笔记) |
