WooFrance Dépannage et support WordPress WooCommerce Forums Forum de Support WooCommerce [Résolu] Woocommerce : Ajouter colonne “Nombre commande” dans la liste user

2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #216619
    pringles2006
    Participant
    Points: 16 pts

    Bonjour, je souhaite supprimer les clients qui n’ont jamais passé commande. j’aimerai rajouter une colonne “nombre de commande” dans la liste de compte pour pouvoir les supprimer rapidement.

    J’ai trouvé ce code qui rajoute id client mais je ne sais pas comment le modifier pour le total des commandes, une petite aide svp ?

     

    add_filter('manage_users_columns', 'pippin_add_user_id_column');
    function pippin_add_user_id_column($columns) {
        $columns['user_id'] = 'User ID';
        return $columns;
    }
     
    add_action('manage_users_custom_column',  'pippin_show_user_id_column_content', 10, 3);
    function pippin_show_user_id_column_content($value, $column_name, $user_id) {
        $user = get_userdata( $user_id );
    	if ( 'user_id' == $column_name )
    		return $user_id;
        return $value;
    }

    d’avance merci

    pringles

    depanagewp
    #234007
    Lilian WB2
    Participant
    Points: 127 pts
    Membre 2 étoiles

    Bonjour,

    A travers ce bout de code vous allez obtenir une variable qui va contenir le nombre de commande par client sans compter les annulées

    $current_user = wp_get_current_user();
    $numorders = wc_get_customer_order_count( $current_user->ID );
    // Get CANCELLED orders for customer
    $args = array(
        'customer_id' => $current_user->ID,
        'post_status' => 'cancelled',
        'post_type' => 'shop_order',
        'return' => 'ids',
    );
    $numorders_cancelled = 0;
    $numorders_cancelled = count( wc_get_orders( $args ) ); // count the array of orders
    
    // NON-CANCELLED equals TOTAL minus CANCELLED
    $num_not_cancelled = $numorders - $numorders_cancelled;
    
    Il ne vous reste plus qu'a utiliser $num_not_cancelled et le placer ou vous souhaitez pour l'afficher. Adaptez votre code qui m'avez l'air pas mal pour un début
    
    source : https://stackoverflow.com/questions/30497669/woocommerce-get-the-number-of-orders-by-a-given-customer 
    depanagewp
2 sujets de 1 à 2 (sur un total de 2)
  • Vous devez être connecté pour répondre à ce sujet.