L'amélioration des fonctionnalités de votre boutique WooCommerce implique souvent de personnaliser l'interface d'administration pour répondre à vos besoins spécifiques. Une personnalisation utile consiste à ajouter des champs personnalisés aux commandes WooCommerce dans la zone d'administration. Ces champs supplémentaires vous permettent de capturer et d'afficher des informations supplémentaires sur chaque commande, qu'il s'agisse d'instructions spéciales, de notes internes ou de détails de suivi personnalisés. Dans ce guide, vous apprendrez à ajouter vos propres champs à la page d'édition de commande WooCommerce à l'aide de PHP. Des outils comme Code WP ou Extraits de code il est recommandé d'intégrer ce code en toute sécurité sans modifier les fichiers de base.
En utilisant PHP, vous pouvez exploiter les hooks WooCommerce pour afficher les champs personnalisés sur la page de modification de la commande et enregistrer les données lorsque la commande est mise à jour. L'exemple suivant montre comment ajouter un champ de texte personnalisé intitulé « Champ personnalisé » au panneau des détails de la commande et stocker la valeur du champ.
<?php
// Display the custom admin field on the WooCommerce order edit page
function add_custom_admin_order_field( $order ) {
// Retrieve the current value of the custom field
$custom_field_value = get_post_meta( $order->get_id(), '_custom_field', true );
?>
<div class="order_data_column">
<h4><?php _e( 'Custom Information', 'text_domain' ); ?></h4>
<p class="form-field form-field-wide">
<label for="custom_field"><?php _e( 'Custom Field:', 'text_domain' ); ?></label>
<input type="text" name="custom_field" id="custom_field" value="<?php echo esc_attr( $custom_field_value ); ?>" />
</p>
</div>
<?php
}
add_action( 'woocommerce_admin_order_data_after_order_details', 'add_custom_admin_order_field' );
// Save the custom field data when the order is updated
function save_custom_admin_order_field( $order_id ) {
if ( isset( $_POST['custom_field'] ) ) {
update_post_meta( $order_id, '_custom_field', sanitize_text_field( $_POST['custom_field'] ) );
}
}
add_action( 'woocommerce_process_shop_order_meta', 'save_custom_admin_order_field' );
?>
Le code ci-dessus est divisé en deux parties. La première partie utilise le woocommerce_admin_order_data_after_order_details
crochet pour ajouter une section de champ personnalisé à la page d'édition de commande dans le tableau de bord d'administration. Le champ de saisie affiche toute valeur précédemment enregistrée à partir des métadonnées de la commande.
La deuxième partie utilise le woocommerce_processus_boutique_commande_meta
crochet pour enregistrer la valeur soumise lorsque la commande est mise à jour. En vérifiant si le champ est défini dans le $_POST
tableau et en utilisant le update_post_meta()
fonction, toutes les modifications que vous apportez sont stockées en toute sécurité.
Envisagez ces possibilités pour améliorer davantage la mise en œuvre de vos champs personnalisés :
L'ajout de champs personnalisés aux commandes WooCommerce dans la zone d'administration est un moyen pratique de capturer des informations supplémentaires adaptées aux besoins de votre entreprise. En utilisant les hooks WooCommerce et PHP, vous pouvez intégrer de manière transparente des champs supplémentaires dans la page d'édition de commande sans interférer avec les fonctionnalités principales de WooCommerce. Que vous ayez simplement besoin d'un champ pour des notes supplémentaires ou une capture de données plus complexe, cette approche offre une solution flexible et sécurisée.
Expérimentez et étendez cette méthode pour créer un système de gestion des commandes plus personnalisé qui s'aligne sur vos exigences opérationnelles et améliore l'efficacité globale de votre boutique WooCommerce.