在Woocommerce打印发票和装箱单中显示订单自定义元数据

时间:2018-10-25 18:09:37

标签: php wordpress woocommerce hook-woocommerce orders

在Woocommerce中,我正在使用 WooCommerce打印发票和装箱单插件,并且试图显示自定义订单元数据值,该值是发票中的交货日期。

这是我主题主题的functions.php文件中的代码:

function sv_wc_pip_add_order_delivery_shipping( $order_id, $order ) {

    //$order_id = 25775; (this method is working but is static and not dynamic)

    $order_id = $order->get_id();

    $invoice_web_delivery_date = get_post_meta($order_id,'jckwds_date',true);

    echo $invoice_web_delivery_date ;

}

add_filter( 'wc_pip_after_customer_addresses', 'sv_wc_pip_add_order_delivery_shipping', 10, 3 );

但是Order_id无效,并且没有为每个woocommerce订单返回订单ID。

如何修改此代码以获取每个订单的正确ID?

1 个答案:

答案 0 :(得分:1)

此挂钩函数的参数完全不同。请尝试以下操作:

add_action( 'wc_pip_after_customer_addresses', 'action_after_customer_addresses', 10, 4 );
function action_after_customer_addresses( $type, $action, $document, $order ) {
    if( $ddate = $order->get_meta( 'jckwds_date' ) )
        echo '<p>'.__("Delivery date") . ': ' . $ddate . '</p>';
    }
}

代码进入您的活动子主题(或活动主题)的function.php文件中。应该可以。

wc_pip_after_customer_addresses action hook的正式文档: