Visualizzare i dettagli di un ordine WooCommerce in PHP
In una pagina custom di un sito fatto con Wordpress, avevo la necessità di visualizzare i dettagli di un ordine di WooCommerce.
Per farlo usiamo l'oggetto WC_Order e i metodi get_items e get_data.
Nel caso specifico, inoltre, dobbiamo includere anche il file wp-load.php per caricare Wordpress.
Questo perchè è una pagina custom, che non risiede dentro Wordpress in modo canonico.
Ecco il codice:
<?php
require_once("../../../wp-load.php");
$order_id = 287;
$order = new WC_Order($order_id);
$strItems = '';
$items = $order->get_items();
foreach ($items as $k => $v) {
if (is_array($v)) {
echo '<li>' . $k . '</li>';
echo '<ul>';
foreach ($v as $k2 => $v2) {
echo '<li>' . $k2 . ': ' . $v2 . '</li>';
}
echo '</ul>';
echo '</li>';
} else {
echo '<li>' . $k . ': ' . $v . '</li>';
}
}
echo '<hr>';
$res = $order->get_data();
echo '<ul>';
foreach ($res as $k => $v) {
if (is_array($v)) {
echo '<li>' . $k . '</li>';
echo '<ul>';
foreach ($v as $k2 => $v2) {
echo '<li>' . $k2 . ': ' . $v2 . '</li>';
}
echo '</ul>';
echo '</li>';
} else {
echo '<li>' . $k . ': ' . $v . '</li>';
}
}
echo '</ul>';
Enjoy!
php wordpress woocommerce wc_order
Commentami!