ecshop订单快递单批量打印二次开发教程
教程开始:1.admin\templates\order_list.htm,在1<input name="print" type="submit" id="btnSubmit4" value="{$lang.print_order}" class="button" disabled="true" onclick="this.form.target = '_blank'" />后,添加1<input name="print_shopping" type="submit" id="btnSubmit6" value="批量打印快递单" class="button" disabled="true" onclick="this.form.target = '_blank'" />2.admin\order.php,在12/* 去发货 */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一下就好了,批量打印快递单就是这么简单,小伙伴们快去试试吧!http://www.gehut.cn