最近商城需要打印发货单,开始用的第三方的软件,感觉不是很爽,需要修改订单打印模式,还没办法,就只能研究用ecshop后台的页面打印,可是现在需要连纸打印多联儿的发货单,于是修改了ecshop的后台打印程序使用Lodop打印控件打印,下面说下步骤
1.下载Lodop打印控件,下载地址:http://www.lodop.net/download.html
2.修改ecshop后台的order.php的生成打印页面的代码,为显示新的打印模板页面,修改代码如下:
// $smarty->template_dir = '../' . DATA_DIR;
// $html .= $smarty->fetch('order_print.html') .
// '
';
}
// echo $html;
$smarty->display('report.htm');
exit;
3.创建打印模板页面report.htm到后台目录/templates/下,模板内容如下:
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
{insert_scripts files="LodopFuncs.js"}
{literal}
{/literal}
{if $smarty.foreach.g.index % 5 == 0}
{if $smarty.foreach.g.index >5}
{$lang.label_inv_payee}{$order.inv_payee}
{$lang.label_inv_content}{$order.inv_content}
{/if}
{/if}
{if $smarty.foreach.g.index >=5}
{/if}
发货单信息
{$lang.print_order_sn} | {$order.order_sn} | {$lang.print_buy_name} | {if $order.user_name}{$order.user_name}{else}{$lang.anonymous}{/if} | {$lang.label_order_time} | {$order.order_time} | {$lang.label_payment} | {$order.pay_name} |
{$lang.label_pay_time} | {$order.pay_time} | {$lang.label_consignee} | {$order.consignee} | 联系电话 | {if $order.tel}{$order.tel} {/if} {if $order.mobile}{$order.mobile}{/if} |
{$lang.label_shipping} | {$order.shipping_name} |
{$lang.label_consignee_address} |
[{$order.region}] {$order.address} {if $order.zipcode}{$lang.label_zipcode}{$order.zipcode} {/if} |
{$lang.goods_name} | {$lang.goods_sn} | {$lang.goods_number} | {$lang.goods_price} | {$lang.subtotal} |
{$goods.goods_name} {if $goods.is_gift}{if $goods.goods_price gt 0}{$lang.remark_favourable}{else}{$lang.remark_gift}{/if}{/if} {if $goods.parent_id gt 0}{$lang.remark_fittings}{/if} |
{$goods.goods_fn} | {$goods.goods_number} | {$goods.formated_goods_price} | {$goods.formated_subtotal} |
4.解压下载的Lodop压缩包中的LodopFunc.js文件,拷贝到后台目录/js/目录下
5.解压下载的Lodop压缩包,安装Lodop打印控件:install_lodop32.exe