WooCommerce fügt programmgesteuert eine Bestellung für einen bestimmten Benutzer hinzu

Lesezeit: 1 Minute

Benutzeravatar von SAMES
SAMES

Ich arbeite an einem benutzerdefinierten WooCommerce-Plugin. In einer meiner Funktionen möchte ich dem System/der Datenbank eine Bestellung hinzufügen wc_create_order().

Der folgende Code funktioniert einwandfrei, aber ich finde keine Möglichkeit, diese Bestellung einem bestimmten Benutzer zuzuordnen (daher wird sie im Backend und auf der Kontoseite dieses Benutzers angezeigt).

(DB-Feld hierfür ist: ‘_customer_user’ ???)

Mein Code:

// $productid, $userid, $price are passed in the function

$user = get_userdata($userid);

$address = array(
        'first_name' => get_user_meta( $userid, "billing_first_name", true),
        'last_name'  => get_user_meta( $userid, "billing_last_name", true),
        '......'
);

$order = wc_create_order();

$args['totals']['subtotal'] = $price;
$args['totals']['total'] = $price;

$order->add_product( get_product( $productid ), 1, $args );
$order->set_address( $address, 'billing' );
$order->set_address( $address, 'shipping' );
$order->calculate_totals();

Das können Sie mit update_post_meta machen

update_post_meta( $order->id, '_customer_user', $userid );

  • Wollte genau das Gleiche posten. Das sollte reichen.

    – Helgatheviking

    26. Juni 2015 um 12:36

1453500cookie-checkWooCommerce fügt programmgesteuert eine Bestellung für einen bestimmten Benutzer hinzu

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy