Ajouter des colonnes personnalisées à la liste des commandes d'administration de WooCommerce
Dans WooCommerce, vous pouvez personnaliser la page de liste des commandes d'administration pour inclure des colonnes supplémentaires qui affichent des informations pertinentes. informations sur vos commandes.
Ajout de colonnes à la commande Liste
Pour ajouter des colonnes personnalisées à la liste de commandes dans WooCommerce, vous devrez modifier le fichier modèle :
/wp-content/plugins/woocommerce/includes/admin/views/html-order-list.php
Dans la fonction manage_shop_order_posts_custom_column, vous pouvez définir le contenu de vos colonnes personnalisées en fonction du paramètre $column. Par exemple, pour ajouter une colonne affichant le poids de la commande, vous pouvez utiliser le code suivant :
case 'weight': $order = wc_get_order($post_id); $weight = $order->get_weight(); echo $weight . ' kg'; break;
Ajout de colonnes à un emplacement spécifique
Vous pouvez spécifier la position de vos colonnes personnalisées en modifiant le filtre manage_edit-shop_order_columns. Ce filtre vous permet de réorganiser les colonnes existantes et d'insérer vos colonnes personnalisées dans un emplacement spécifique.
Par exemple, pour insérer une colonne personnalisée nommée "Ma colonne" avant la colonne "Actions", vous utiliserez ce qui suit code :
add_filter('manage_edit-shop_order_columns', 'reorder_admin_order_columns'); function reorder_admin_order_columns($columns) { $reordered_columns = array(); foreach ($columns as $key => $column) { $reordered_columns[$key] = $column; if ($key == 'order_status') { $reordered_columns['my-column'] = 'My Column'; } } return $reordered_columns; }
Stockage de commandes haute performance (HPOS)
À partir de WooCommerce 8.2, Le stockage des commandes haute performance (HPOS) est activé par défaut pour les nouvelles installations. Cela nécessite une approche légèrement différente pour l'ajout de colonnes personnalisées :
add_filter('manage_woocommerce_page_wc-orders_columns', 'reorder_admin_order_hpos_columns'); function reorder_admin_order_hpos_columns($columns) { $reordered_columns = array(); foreach ($columns as $key => $column) { $reordered_columns[$key] = $column; if ($key == 'order_status') { $reordered_columns['my-column'] = 'My Column'; } } return $reordered_columns; } add_action('manage_woocommerce_page_wc-orders_custom_column', 'display_admin_order_hpos_column_content', 10, 2); function display_admin_order_hpos_column_content($column, $order) { switch ($column) { case 'my-column': // Get custom order metadata $value = $order->get_meta('_the_meta_key'); if (!empty($value)) { echo $value; } else { echo '<small>(<em>no value</em>)</small>'; } break; } }
Ces modifications de code vous permettent d'ajouter des colonnes personnalisées à la page de liste des commandes d'administration, vous offrant ainsi des informations supplémentaires et une flexibilité dans la gestion de vos commandes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!