Vous êtes en train de créer un site e-commerce pour l’un de vos clients, ou pour vous-même, et vous avez besoin d’afficher l’historique des commandes par utilisateurs en dehors de la page “Mon compte” de Woocommerce.
Il existe des modules payants, mais j’ai la solution gratuite pour ça.
Première étape
Insérer ce code dans votre fichier “functions.php” de votre thème enfant
function woo_order_history( $atts ) {
extract( shortcode_atts( array(
'order_count' => -1
), $atts ) );
ob_start();
$customer_orders = wc_get_orders( apply_filters( 'woocommerce_my_account_my_orders_query', array(
'customer' => get_current_user_id(),
'page' => $current_page,
'paginate' => true,
) ) );
wc_get_template(
'myaccount/orders.php',
array(
'current_page' => absint( $current_page ),
'customer_orders' => $customer_orders,
'has_orders' => 0 < $customer_orders->total,
)
);
return ob_get_clean();
}
add_shortcode('woocommerce_history', 'woo_order_history');
Avec ce code, nous avons créé un shortcode, qui est [woocommerce_history], qui devra être inséré dans la page où vous souhaitez montrer les commandes de l’utilisateur.
Deuxième étape
Il suffit d’insérer le widget “Code court” et de copier le shortcode à l’intérieur de la page souhaitée.
Avec Elementor, cela est très simple.
Il est possible de l’ajouter avec n’importe quel constructeur de pages ou directement dans votre page PHP.
Et normalement, vous devriez voir apparaitre l’historique des commandes.
Troisième étape
Lorsque les commandes s’affichent, il est possible de consulter le détail de chacune.
Étant donné que vous avez copié le shortcode en dehors de la page “mon compte”, vous ne pouvez pas visualiser le détail de la commande.
Cependant une solution existe.
Le lien “Voir” redirige automatiquement vers la page d’historique de commande de Woocommerce. Vous trouverez le slug de cette page ici.
Donc pour que ce lien fonctionne, vous devez avoir obligatoirement la page “Mon compte” valide avec le shortcode [woocommerce_my_account] à l’intérieur. Sinon l’historique ne fonctionnera pas.
Testé sur WordPress 6.3.0 et Woocommerce 8.1.1
Un nouveau projet WordPress ? Besoin d’aide ?
Contactez-moi ou visitez mon site et je me ferais un plaisir de vous aider.
Un nouveau projet web ?
Un nouveau site vitrine ou e-commerce ?
Ou même vous souhaitez faire la refonte de votre site ?