Varlık meta veri sarmalayıcısını kullanarak şunları da yapabilirsiniz:
foreach (commerce_order_load_multiple(array(), array('status' => 'pending'), TRUE) as $order) {
$product_ids = array();
foreach (entity_metadata_wrapper('commerce_order', $order)->commerce_line_items as $delta => $line_item_wrapper) {
if (in_array($line_item_wrapper->type->value(), commerce_product_line_item_types())) {
$product_ids[] = $line_item_wrapper->commerce_product->raw();
}
}
}
Buradaki önemli kısım, satır öğesinin türünü kontrol etmektir; bu nedenle, ürün kimlikleri listenize gönderim satır öğelerini veya diğer satır öğesi türlerini dahil etmezsiniz. Ayrıca, sarıcı uyarı ile ben satır öğesinde commerce_product alanının "ham" değerini kullandığımı. Bunun nedeni, "raw" değerinin yalnızca ürün kimliğini oluşturması, "value" ın tam olarak yüklenen referans ürünü olmasıdır.