Используя WooCommerce, у меня есть этот код, который выводит отчет о списке продуктов:
$args = array(
'post_type' => 'product',
'posts_per_page' => -1,
'meta_key' => 'total_sales',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => 'total_sales',
'value' => 0,
'compare' => '>'
)
)
);
$output = array_reduce( get_posts( $args ), function( $result, $post ) {
return $result .= '<tr><td>' . $post->post_title . '</td><td>' . get_post_meta( $post->ID, 'total_sales', true ) . '</td></tr>';
} );
echo '<table><thead><tr><th>' . __( 'Product', 'woocommerce' ) . '</th><th>' . __( 'Units Sold', 'woocommerce' ) . '</th></tr></thead>' . $output . '</table>';
С этим кодом я хотел бы перечислить продажи на странице WordPress.
Мой вопрос: как добавить SKU в таблицу?
Спасибо
— Легкое обновление —
Вы можете добавить код, немного изменив код:
$args = array(
'post_type' => 'product',
'posts_per_page' => -1,
'meta_key' => 'total_sales',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => 'total_sales',
'value' => 0,
'compare' => '>'
)
)
);
$output = array_reduce( get_posts( $args ), function( $result, $post ) {
return $result .= '
<tbody>
<tr>
<td>' . $post->post_title . '</td>
<td>' . get_post_meta( $post->ID, "total_sales", true ) .'</td>
<td>' . get_post_meta( $post->ID, "_sku", true ) .'</td>
</tr>
</tbody>';
} );
echo '<table>
<thead>
<tr>
<th>' . __( "Product", "woocommerce" ) . '</th>
<th>' . __( "Units Sold", "woocommerce" ) . '</th>
<th>' . __( "Sku", "woocommerce" ) . '</th>
</tr>
</thead>' . $output . '
</table>';
Я использую здесь get_post_meta( $post->ID, "_sku", true )
получить значение SKU из таблицы базы данных wp_postmeta…
Или же вы можете использовать с объектом продукта метод get_sku()
…
Других решений пока нет …