当前位置:首页 > ZenCart > 运营技巧 > 给zencart的购物车模块添加显示重量和运费的操作

给zencart的购物车模块添加显示重量和运费的操作

时间:2017-05-13 09:25来源:未知 作者:admin 点击:
最终结果: 按照重量计算 首先设置每单位的运费 比如这边设置的是20 Zencart的重量还考虑到包装材料的重量 这里超过50就是大包裹,否则为小包裹 计算方法:比如产品的总重量为23KG的
SEO外贸网站方案

最终结果:


 

按照重量计算

首先设置每单位的运费

比如这边设置的是20

Zencart的重量还考虑到包装材料的重量

这里超过50就是大包裹,否则为小包裹

计算方法:比如产品的总重量为23KG的话,则总运费为:(23+3)*20=520

产品为大包裹的话,比如111KG,则总运费=(111+111*0.1)*20=2442

 

 

每单位重量的运费在表configuration中,configuration_id=626

 

在shopping_cart.php文件中,自定义一个函数perunit()用于获取每单位重量的运费

  //每单位重量的运费

   function peruint(){

       $sql="select configuration_value FROMzen_configuration WHEREconfiguration_key='MODULE_SHIPPING_PERWEIGHTUNIT_COST'";

       $res=mysql_query($sql);

       $result=mysql_fetch_array($res);

       return $result[0];

  }

 

然后在modules/pages/shopping_cart/header_php.php文件中调用该函数即可,

如:$shipping_perunit = $_SESSION['cart']->peruint();

还有产品的价格(不包含运费)会通过函数进行格式化(经过格式化后会在数字前面加上$,如:$245),所以我们需要取出格式化前的价格,以便后面和运费进行加法运算。

则只需要在modules/pages/shopping_cart/header_php.php文件中,添加以下内容即可。

//每单位重重量的运费

$shipping_perunit =$_SESSION['cart']->peruint();

//格式化前的产品总价格(格式化后会变成类似于$225,即在前面加上了美元符号)

$shipping_price=$_SESSION['cart']->show_total();

 

Tpl_shopping_cart_default.php文件中需要修改的地方:

<?php

                   //总运费

                   $fullfreight=$shipping_weight*$shipping_perunit;

?>

<div id="cartSubTotal">

<span class="items"><?php echo 'Total items:';?></span><?php echo $_SESSION['cart']->count_contents().'<br>'; ?>

<span class="items"><?php echo  'The products totalprice:</span>'.$cartShowTotal.'<br>'; ?>

<span class="items"><?php echo'Weight:</span>'.$shipping_weight.'<br>'; ?>

<span class="items"><?php echo 'Per WeightUint:</span>$'.$shipping_perunit.'<br>'; ?>

<span class="items"><?php echo'Fullfreight:</span>'.$shipping_weight.'*'.$shipping_perunit.'=$'.$fullfreight.'<br>';?>

<span class="items"><?php echo'Total:</span>'.($shipping_price+$fullfreight).'<br>'; ?>

 

以上代码替换掉<div id="cartSubTotal">。。。</div>即可

注意: 由于zencart算重量的时候,会把材料的重量也包括在内,所以只需要在后台修改如下位置即可:

  • TAG:
你可能还感兴趣的文章
如何关闭在zencart商品详情页面,关

企业QQ:800013951(多工号) 手机QQ扫描: