У меня есть таблица, в которой перечислены консолидированные позиции из заказов, и я хотел бы перечислить номера заказов, из которых товары получают
<table class="widefat">
<?php
$ord_prods = $this->get_order_report_data(
array(
'data' => $query_data,
'order_by' => 'order_item_qty DESC',
'group_by' => 'product_id',
'query_type' => 'get_results',
'filter_range' => true,
'parent_order_status' => false,
'order_status' => array( 'processing' ),
)
);
if ( $ord_prods ) {
// @codingStandardsIgnoreStart
echo '<tr>
<th style="border: 1px solid #f00;"><b>Product Name</b></th>
<th style="border: 1px solid #f00;"><b>Category</b></th>
<th style="border: 1px solid #f00;"><b>Count ('.count($ord_prods).')</b></th>
<th style="border: 1px solid #f00;"><b>Price</b></th>
<th style="border: 1px solid #f00;"><b>Total</b></th>
<tr>
';
foreach ( $ord_prods as $product ) {
$p = wc_get_product( $product->product_id );
$product_cats = implode(', ',array_map(function($obj){ return $obj->name; }, wp_get_post_terms( $product->product_id, 'product_cat' )));
echo '
<tr >
<td class="name" style="border: 1px solid #000;"><a href="' . esc_url( add_query_arg( 'product_ids', $product->product_id ) ) . '">' . esc_html( get_the_title( $product->product_id ) ) . '</a></td>
<td style="border: 1px solid #000;"><span class="text-muted">' . $product_cats . '</span></td>
<td class="count" style="border: 1px solid #000;">' . esc_html( $product->order_item_qty ) . '</td>
<td style="border: 1px solid #000;">'.esc_html($p->get_price()).'</td>
<td class="name" style="border: 1px solid #000;">'.$p->get_price()* $product->order_item_qty.'</td>
</tr>';
}
// @codingStandardsIgnoreEnd
} else {
echo '<tr><td colspan="3">' . esc_html__( 'No products found in range', 'woocommerce' ) . '</td></tr>';
}
?>
</table>
<?php
}
}
Выше приведен код таблицы, в которой перечислены консолидированные позиции как получить категорию заказа из перечисленных продуктов и показать их в новой таблице
по порядку, категории, цене и количеству