Comment masquer le statut de la commande dans WooCommerce
Publié: 2020-11-12Voulez-vous masquer les statuts des commandes principales dans votre boutique WooCommerce ? Récemment, un client m'a demandé de masquer certains statuts de commande dans sa boutique WooCommerce. Dans cet article, vous verrez comment vous pouvez facilement supprimer certains statuts de commande et comment en créer des personnalisés.
WooCommerce Masquer le statut de la commande
Pour diverses raisons, vous souhaiterez peut-être masquer certains statuts de commande principaux. Cependant, la version par défaut de WooCommerce vous permet de marquer les commandes avec l'un des statuts suivants terminé, traitement, paiement en attente, en attente, remboursé, annulé ou échoué.
De nombreux plugins vous permettent de gérer les statuts des commandes, et l'un d'eux est le plugin " WooCommerce Order Status Manager " au prix de 49 $.
Cela peut être une solution coûteuse pour votre magasin, mais il existe un moyen simple de le faire. Dans la version actuelle de WooCommerce, les statuts de commande sont enregistrés en tant que statut de publication personnalisé, tout comme le brouillon, programmé ou publié pour les publications.
Comment masquer le statut de la commande
Cela dit, voyons comment vous pouvez masquer le statut de la commande dans WooCommerce à l'aide d'un extrait de code. Pour vérifier les messages d'état de la commande par défaut, connectez-vous à votre site WordPress et accédez au tableau de bord en tant qu'utilisateur administrateur. Ensuite, cliquez sur WooCommerce > Commandes . Vous verrez ceci :
Ces messages sont également affichés dans le front-end lorsqu'un client essaie de passer une commande. Vous pouvez y accéder en cliquant sur Mon compte > Commandes, comme indiqué ci-dessous :
Étapes pour masquer les statuts de commande de base
Il convient de mentionner que lorsque vous masquez les statuts des commandes principales, assurez-vous qu'aucun produit n'a ce statut. De plus, vous devez vous assurer que votre boutique WooCommerce n'utilise ce statut nulle part, car cela peut entraîner des erreurs. Par exemple, si vous ne prévoyez pas d'effectuer de remboursement dans votre boutique WooCommerce, vous pouvez masquer le statut de remboursement.
La raison pour laquelle nous ne pouvons pas supprimer tous les statuts de commande principaux est que les plug-ins utilisent des statuts de commande, même ceux que vous n'utilisez pas dans votre flux de travail. Les plugins comme les passerelles de paiement supposent toujours que les statuts de commande principaux sont présents. S'ils ne sont pas là, ils vont casser
Voici les étapes que vous devez suivre :
- Connectez-vous à votre site WordPress et accédez au tableau de bord en tant qu'utilisateur administrateur.
- Dans le menu Dashboard, cliquez sur Appearance Menu > Theme Editor Menu . Lorsque la page de l'éditeur de thème est ouverte, recherchez le fichier de fonctions de thème pour ajouter la fonction permettant de masquer les statuts de commande principaux dans votre boutique WooCommerce.
- Ajoutez le code suivant au fichier functions.php :
/* * Suppression des statuts de commande de base * @param array $wc_statuses_arr Tableau de tous les statuts de commande sur le site Web */ fonction njengah_remove_order_statuses( $wc_statuses_arr ){ // Traitement if( isset( $wc_statuses_arr['wc-processing'] ) ) { // si existe unset( $wc_statuses_arr['wc-processing'] ); // le supprimer du tableau } // Remboursé if( isset( $wc_statuses_arr['wc-refunded'] ) ){ unset( $wc_statuses_arr['wc-refunded'] ); } // En attente if( isset( $wc_statuses_arr['wc-on-hold'] ) ){ unset( $wc_statuses_arr['wc-on-hold'] ); } // Manqué if( isset( $wc_statuses_arr['wc-failed'] ) ){ unset( $wc_statuses_arr['wc-failed'] ); } // En attente de paiement if( isset( $wc_statuses_arr['wc-pending'] ) ){ unset( $wc_statuses_arr['wc-pending'] ); } // Complété //if( isset( $wc_statuses_arr['wc-completed'] ) ){ // unset( $wc_statuses_arr['wc-completed'] ); //} // Annulé //if( isset( $wc_statuses_arr['wc-cancelled'] ) ){ // unset( $wc_statuses_arr['wc-cancelled'] ); //} retourne $wc_statuses_arr ; // renvoie les statuts des résultats } add_filter( 'wc_order_statuses', 'njengah_remove_order_statuses' );
- Voici le résultat sur le front-end :
- Pour ajouter un statut de commande personnalisé, ajoutez le code suivant dans le fichier functions.php :
/** * Enregistrez un nouveau statut avec l'ID "wc-njengah-shipment" et l'étiquette "En attente d'expédition" */ function njengah_register_awaiting_shipment_status() { register_post_status( 'wc-njengah-shipment', array( 'label' => 'En attente d'expédition', 'public' => vrai, 'show_in_admin_status_list' => true, // afficher le nombre Tous (12) , Terminé (9) , En attente d'expédition (2) ... 'label_count' => _n_noop( 'En attente d'expédition <span class="count">(%s)</span>', 'En attente d'expédition <span class="count">(%s)</span>' ) ) ); } add_action( 'init', 'njengah_register_awaiting_shipment_status' ); /* * Ajouter le statut enregistré à la liste des statuts de commande WC * @param array $wc_statuses_arr Tableau de tous les statuts de commande sur le site Web */ function njengah_add_status( $wc_statuses_arr ) { $new_statuses_arr = array(); // ajouter un nouveau statut de commande après traitement foreach ( $wc_statuses_arr as $id => $label ) { $new_statuses_arr[ $id ] = $label; if ( 'wc-completed' === $id ) { // après le statut "Completed" $new_statuses_arr['wc-njengah-shipment'] = 'En attente d\'expédition' ; } } retourne $new_statuses_arr ; // si l'état de la commande n'a pas d'importance pour vous, vous pouvez supprimer les lignes 21-32 et décommenter les 35-36 suivantes // $wc_statuses_arr['wc-njengah-shipment'] = 'En attente d'expédition' ; // retourne $wc_statuses_arr ; } add_filter( 'wc_order_status', 'njengah_add_status' );
- Voici le résultat :
Conclusion
Dans cet article, vous avez vu comment vous pouvez masquer les statuts des commandes de base. Cependant, il est important de noter que le statut de la commande que vous souhaitez supprimer n'est utilisé nulle part sur votre boutique, car cela peut entraîner des erreurs. De plus, j'ai expliqué comment ajouter un statut de commande personnalisé. Si vous n'êtes pas familiarisé avec la gestion du code, veuillez contacter un développeur WordPress qualifié.
Articles similaires
- Comment masquer les notifications de mise à jour de WooCommerce
- Comment personnaliser la page de paiement de la vitrine
- Comment configurer le blog WooCommerce Storefront
- Comment masquer la quantité en stock dans WooCommerce
- Comment ajouter le plan du site WooCommerce Storefront
- Comment ajouter une remise sur la quantité de WooCommerce Storefront
- Comment supprimer, renommer et ajouter des options de tri Storefront
- Comment masquer le titre de l'onglet produit dans WooCommerce
- Comment modifier les options de visibilité des produits WooCommerce
- Comment masquer les prix des produits en fonction du rôle de l'utilisateur Storefront
- Comment masquer le bouton En savoir plus et Ajouter au panier WooCommerce
- Comment masquer le SKU, la catégorie, les balises Meta Product Page WooCommerce
- Comment masquer le formulaire d'inscription WooCommerce
- Comment utiliser les attributs de produit WooCommerce étape par étape [Guide complet]
- Comment supprimer ou renommer le badge de vente WooCommerce Storefront
- Comment renommer les messages d'état de la commande dans WooCommerce
- Comment supprimer le thème WooCommerce Storefront de la page de panier
- Comment supprimer le fil d'Ariane WooCommerce Storefront
- Comment ajouter un statut de commande personnalisé dans WooCommerce
- Comment approuver automatiquement les commandes dans WooCommerce