Php 获取具有非唯一元键的特定订单项元数据
我正在使用应答码:Php 获取具有非唯一元键的特定订单项元数据,php,wordpress,woocommerce,metadata,orders,Php,Wordpress,Woocommerce,Metadata,Orders,我正在使用应答码: // Get the $order object from an ID (if needed only) $order = wc_get_order( $order_id); // Loop through order line items foreach( $order->get_items() as $item ){ // get order item data (in an unprotected array) $item_data = $ite
// Get the $order object from an ID (if needed only)
$order = wc_get_order( $order_id);
// Loop through order line items
foreach( $order->get_items() as $item ){
// get order item data (in an unprotected array)
$item_data = $item->get_data();
// get order item meta data (in an unprotected array)
$item_meta_data = $item->get_meta_data();
// get only All item meta data even hidden (in an unprotected array)
$formatted_meta_data = $item->get_formatted_meta_data( '_', true );
// Display the raw outputs (for testing)
echo '<pre>'; print_r($item_meta_data); echo '</pre>';
echo '<pre>'; print_r($formatted_meta_data); echo '</pre>';
}
由于所需的订单项元数据没有唯一的元数据键(已多次使用),因此将使用
WC\u order\u item
get\u formatted\u meta\u data()
方法,以数组形式格式化自定义订单项元数据,如下所示:
// Get the $order object from an ID (if needed only)
$order = wc_get_order( $order_id);
// Loop through order line items
foreach( $order->get_items() as $item ){
// get specific order item data value from specific meta key
$carboidrato = $item->get_meta('Carboidrato');
// Output value for that metakey
echo '<p>' . __('Carboidrato') . ': ' . $carboidrato . '</p>';
}
有关信息:当您想要的订单项元数据具有唯一的元数据键时,您将使用
WC\u data
get\u meta()
方法,如下所示:
// Get the $order object from an ID (if needed only)
$order = wc_get_order( $order_id);
// Loop through order line items
foreach( $order->get_items() as $item ){
// get specific order item data value from specific meta key
$carboidrato = $item->get_meta('Carboidrato');
// Output value for that metakey
echo '<p>' . __('Carboidrato') . ': ' . $carboidrato . '</p>';
}
//从ID获取$order对象(如果需要)
$order=wc\u get\u order($order\u id);
//循环浏览订单行项目
foreach($order->get_items()作为$item){
//从特定元键获取特定订单项数据值
$carboidrato=$item->get_meta('carboidrato');
//该元键的输出值
回音“”.“Carboidrato”):“.$Carboidrato.””;
}
太棒了!!!非常感谢你!
Array
(
[Carboidrato] => Array
(
[0] => Arroz Branco COM Feijão
[1] => Arroz Integral à Grega COM Feijão
[2] => Macarrão Alho Poró
)
[Proteína] => Array
(
[0] => Parmegiana Bovina
[1] => Parmegiana Frango
)
[Guarnição] => Array
(
[0] => Batata Rosthi Recheada com Requeijão
[1] => Farofa
)
)
// Get the $order object from an ID (if needed only)
$order = wc_get_order( $order_id);
// Loop through order line items
foreach( $order->get_items() as $item ){
// get specific order item data value from specific meta key
$carboidrato = $item->get_meta('Carboidrato');
// Output value for that metakey
echo '<p>' . __('Carboidrato') . ': ' . $carboidrato . '</p>';
}