我被一个问题卡住了,对于我的电子商务网站,在下订单后,我想在订单详细信息部分显示每个产品的随机数字。我已经尝试过了:在主题(function.php)中
add_action( 'woocommerce_order_status_processing', 'add_unique_id');然后
function add_unique_id($order_id) {
$order = new WC_Order( $order_id );
$items = $order->get_items();
foreach ($items as $item_id => $product )
{
$gen_id ="Hi Dad!";
wc_add_order_item_meta($item_id, 'unique_id', $gen_id);
}但是通过使用这个,我不会得到每个产品的唯一编号。
我想在下面的红色部分添加随机数在感谢页的图像。

请帮助解决。提前感谢
发布于 2019-01-17 20:15:50
如果您已经完成了将item_meta_data添加到购物车中,希望您也能轻松地使其在购物车中可见?
这不是必须的,只是为了测试的目的。为此,您可以使用"woocommerce_get_item_data“
add_filter( 'woocommerce_get_item_data', 'mwb_wgm_woocommerce_get_item_data', 10, 2 );
function mwb_wgm_woocommerce_get_item_data($item_meta, $existing_item_meta){
//by using $existing_item_meta , find your unique_key (whether it is displaying or not)
foreach ($existing_item_meta as $key => $val ) {
if($key == 'unique_key') {
$item_meta [] = array (
'name' => __('RANDOM KEY','your_slug'),
'value' => stripslashes( $val ),
);
}
}
return $item_meta;
}让我知道您的唯一密钥是否显示在那里?
发布于 2019-01-17 19:24:39
有各种各样的问题可以有1. wc_add_order_item_meta (Woo版本低于3.0.0)
如果您正在考虑将item_meta添加到您的每个产品,然后是,它将自动显示在感谢您的订单页面。
请使用"$item->add_meta_data('Your_Key',$order_val);“WC_version >= 3.0.0
希望本文能对您有所帮助:)
https://stackoverflow.com/questions/54233553
复制相似问题