【问题标题】:Generate and get invoice PDF via PHP with WooCommerce PDF Invoices & Packing Slips使用 WooCommerce PDF 发票和装箱单通过 PHP 生成和获取发票 PDF
【发布时间】:2020-12-29 11:05:22
【问题描述】:

我想要什么

我想通过 PHP 脚本生成 PDF 发票并将其存储到某个位置(可能是 .php 文件旁边的文件夹:"invoices/2020-12-29_invoices.pdf")。我有一个订单 ID 数组,我想从中获取 PDF(例如:array('123132','12321',...))。

如何通过 Wp-Admin 完成

在管理面板中,有人可以使用 WooCommerce->PDF 发票中的下拉“PDF 发票”创建发票-PDF,然后单击按钮为所选订单生成以下示例链接:

https://www.example.com/wp-admin/admin-ajax.php?action=generate_wpo_wcpdf&document_type=invoice&order_ids=123132x12321&_wpnonce=3fnonce29

该链接包含应生成 PDF 的订单 ID 和 _wpnonce。链接本身是一个 PDF 文件。

我为什么挣扎

其中大部分是通过 jQuery、ajax 和人工手动操作完成的,但我希望通过 php 自动完成订单 ID 列表。

我的发现

大概wp_create_nonce('generate_wpo_wcpdf')可以用

我使用的插件

【问题讨论】:

    标签: php wordpress pdf woocommerce invoice


    【解决方案1】:

    如果你想在代码中创建一个 PDF,你可以这样做:

    $invoice = wcpdf_get_document( 'invoice', $order, true );
    $pdf_data = $invoice->get_pdf();
    

    然后您可以使用 PDF 数据保存到文件(file_put_contents 等)

    如果你想使用 admin-ajax 链接,你可以像这样创建 nonce:

    wp_nonce_url( admin_url( 'admin-ajax.php?action=generate_wpo_wcpdf&template_type=invoice&order_ids=' . $list_of_order_ids ), 'generate_wpo_wcpdf' )
    

    【讨论】:

      猜你喜欢
      • 2016-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多