Woocommerce - 在订单中为产品添加序列

use*_*026 15 php woocommerce

我正在寻找一种方法来为每个销售的产品添加一个序列号,在WooCommerce的订单显示中.我需要的是一个手动解决方案,其中发送产品的S/N在发送包之前被添加到订单中.我试图在下面的图片上显示它:

添加序列的可能性

最初,我考虑将其作为产品元实现(不知道如何),但我意识到只有在订单被设置为保持而不是处理时才能更改产品元数据.

关于如何进行的任何想法?谢谢!

Sco*_*ott 1

不太确定您想要实现什么,但如果您需要每个产品的序列号(只是为了将其显示在购物车页面中),您可以将该数据作为属性添加到每个列表中,然后在结帐区域中调用它并显示它使用钩子。您想如何处理序列号?纯粹是为了结帐时显示吗?假设它是...

add_filter( 'woocommerce_cart_item_name', recall_serial_number, 10, 2 );

function recall_serial_number() {
    $serial = $item_data->get_attributes( 'serial-number' );    
    echo $serial;
}
Run Code Online (Sandbox Code Playgroud)

如果您只想在购物车页面上显示序列号而不进行进一步处理,请尝试一下此代码。确保属性名称为“序列号”,未经测试但应该可以使用。