我试图通过在magento中使用集成TCPDF来解决此问题,但我不知道该怎么做
这是我在这个文件中的尝试 \ app \ code \ core \ Mage \ Sales \ Model \ Order \ Pdf \ Abstract.php
require_once('TCPDF/TCPDF.php');
$pdf = new TCPDF_TCPDF
(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true,'UTF-8', false);
我不知道我做错了什么。谢谢。
答案 0 :(得分:1)
1)不要编辑核心文件。
2)magento中有多个发票生成器:来自后端的发票,成功页面上的发票等。因此,请确保您正在编辑和测试正确的发票生成器。以下示例适用于后端的发票。
3)可能有自定义模块覆盖你的xml,比如Webshopapps_Invoicing,检查它或它不起作用(这是我在尝试类似的东西时遇到的问题)。
将TCPDF复制到magento lib文件夹后,现在可以通过将类名从root/TCPDF/TCPDF.php
更改为tcpdf
TCPDF_TCPDF
编辑TCPDF.php
进入code/local/Yourcompany
并创建文件夹发票。在此文件夹中,使用以下内容创建etc/config.xml
:
<?xml version="1.0"?>
<config>
<modules>
<Yourcompany_Invoices>
<version>0.0.1</version>
</Yourcompany_Invoices>
</modules>
<global>
<models>
<sales>
<rewrite>
<order_pdf_invoice>Yourcompany_Invoices_Sales_Model_Order_Pdf_Invoice</order_pdf_invoice>
</rewrite>
</sales>
</models>
</global>
</config>
在code/local/Yourcompany
中创建另一个文件夹结构Sales/Model/Order/Pdf
并添加Invoice.php
:
class Yourcompany_Invoices_Sales_Model_Order_Pdf_Invoice extends Mage_Sales_Model_Order_Pdf_Invoice {
// it can be another class if you have a custom module overwriting it, like Webshopapps_Invoicing_Sales_Model_Order_Pdf_Invoice
$pdf = new TCPDF_TCPDF();//your stuff here
}
然后提交测试订单并进入管理员并查看pdf发票。