在ecshop网店系统当中,增加批量打印快递单功能,大大方便了用户发货问题。以下是最模板提供的开发方法
效果图
1.admin\templates\order_list.htm,在 <input name="print" type="submit" id="btnSubmit4" value="{$lang.print_order}" class="button" disabled="true" onclick="this.form.target = '_blank'" /> 后,添加 <input name="print_shopping" type="submit" id="btnSubmit6" value="批量打印快递单" class="button" disabled="true" onclick="this.form.target = '_blank'" /> 2.admin\order.php,在 /* 去发货 */ elseif (isset($_POST['to_delivery'])) 前,添加 //批量打印快递单 elseif (isset($_POST['print_shopping'])){ $region_array = array(); $region_id = !empty($_CFG['shop_country']) ? $_CFG['shop_country'] . ',' : ''; $region_id .= !empty($_CFG['shop_province']) ? $_CFG['shop_province'] . ',' : ''; $region_id .= !empty($_CFG['shop_city']) ? $_CFG['shop_city'] . ',' : ''; $region_id = substr($region_id, 0, -1); $region = $db->getAll("SELECT region_id, region_name FROM " . $ecs->table("region") . " WHERE region_id IN ($region_id)"); if (!empty($region)) { foreach($region as $region_data) { $region_array[$region_data['region_id']] = $region_data['region_name']; } } $smarty->assign('shop_name', $_CFG['shop_name']); $smarty->assign('province', $region_array[$_CFG['shop_province']]); $smarty->assign('city', $region_array[$_CFG['shop_city']]); $smarty->assign('shop_address', $_CFG['shop_address']); $smarty->assign('service_phone',$_CFG['service_phone']); //以上是系统参数 $order_sn_list = array(); $order_sn_list = explode(',', $_POST['order_id']); foreach ($order_sn_list as $order_sn) { /* 取得订单信息 */ $order = order_info(0, $order_sn); $smarty -> assign('order',$order); $shipping = $db->getOne("SELECT * FROM " . $ecs->table("shipping") . " WHERE shipping_id=" . $order['shipping_id']); if (empty($shipping['shipping_print'])) { echo $smarty->fetch("str:" . $shipping['shipping_print']); } else { $shipping_code = $db->getOne("SELECT shipping_code FROM " . $ecs->table('shipping') . " WHERE shipping_id=" . $order['shipping_id']); if ($shipping_code){ include_once(ROOT_PATH . 'includes/modules/shipping/' . $shipping_code . '.php'); } if (!empty($_LANG['shipping_print'])) { echo $smarty->fetch("str:$_LANG[shipping_print]"); } else { echo $_LANG['no_print_shipping']; } } } exit; } 3.在languages\zh_cn\shipping中对应的php文件里 $_LANG['shipping_print'] =‘’; 这一句,将‘’中的内容样式修改过来就好了。至于取页面样式,只要在对应页面Ctrl+S一下就好了。