Wie erhalte ich die Bestell-ID in WooCommerce?

Lesezeit: 3 Minuten

Wie erhalte ich die Bestell ID in WooCommerce
Moslem

Wie erhalte ich die Bestell-ID in WooCommerce?

  • Nur um klarzustellen: order id ist gleich post idwie sie in WordPress-Standardtabellen zu finden sind. order number ist der Code, der die Bestellung von WooCommerce darstellt, wie sie in WC-Tabellen dargestellt wird.

    – Erenor Paz

    1. September 2016 um 9:09 Uhr

Wie erhalte ich die Bestell ID in WooCommerce
Elvis Fernandes

Aktuelle Methode:

Der aktuelle Weg, dies zu erreichen, ist die Verwendung dieser Funktion:

$order->get_id();

Das sollte die Bestell-ID ohne “#” zurückgeben.

Alte Methode:

In älteren Versionen von WooCommerce müssen Sie möglicherweise stattdessen als Eigenschaft darauf zugreifen:

echo $order->id;

  • Dies gibt die ID des Bestellpostens zurück, nicht die ID der Bestellung. $order->get_order_number(); ist die richtige Antwort.

    – Pierb

    5. November 2015 um 16:49 Uhr


  • Wenn Sie bei Google nach etwas Ähnlichem suchen, ist dies der erste Beitrag. $order->id nicht mehr unterstützt wird, erhalten Sie eine Fehlermeldung (Mitglied hat geschützten Zugriff). Aber wenn Sie eine ID (keine Bestellnummer) erhalten möchten, können Sie dies tun mit: $order->get_id();

    – Emilushi

    19. Dezember 2017 um 11:24 Uhr


  • Dies funktioniert nicht in der aktuellen Version von Woocommerce, Sie sollten $order->get_id(); wie Emilushi sagte.

    – MidouCloud

    30. Januar 2018 um 9:49 Uhr

  • Meine Antwort war vor 3,5 Jahren, für eine Antwort, die jetzt 4 Jahre alt ist. Hoffentlich hat sich Woocommerce weiterentwickelt und die Dinge hatten sich geändert :). Habe gerade meine Antwort bearbeitet, um die aktuelle Lösung widerzuspiegeln. Danke für den Hinweis auf die aktuelle Vorgehensweise.

    – Elvis Fernandes

    27. Februar 2018 um 2:11 Uhr


  • wo definierst du $order??

    – Enrico

    21. Juni 2019 um 12:52 Uhr

1646643548 803 Wie erhalte ich die Bestell ID in WooCommerce
Tauchen

es funktionierte. Habe es gerade modifiziert

global $woocommerce, $post;

$order = new WC_Order($post->ID);

//to escape # from order id 

$order_id = trim(str_replace('#', '', $order->get_order_number()));

  • Ich habe es versucht – $order->get_order_number() und es gab nur die ID zurück ( Es gab kein # ). Ich musste das # nicht ersetzen. Wahrscheinlich hat das letzte Woocommerce-Update die # entfernt. Kann jemand bestätigen?

    – Aajahid

    2. Januar 2016 um 11:50 Uhr

  • Ja, das kann ich bestätigen $order->get_order_number() gibt nur die ID zurück (kein „#“-Zeichen) seit mindestens Woocommerce-Version 2.4 (bis einschließlich 3.0 und höher). Es kann von Plugins mit einem WordPress-Filter überschrieben werden, woocommerce_order_number Daher ist es am besten anzunehmen, dass es nur zur Anzeige dient und möglicherweise nicht numerisch ist. Danke!

    – wahre Medien

    28. April 2017 um 5:20 Uhr

  • Ist es möglich, Informationen über den Lagerbestand bestellter Produkte mit dem Objekt $order zu erhalten?

    – Yogesh

    18. März 2021 um 11:06 Uhr

Ich habe es nicht getestet und weiß nicht, wo Sie es brauchen, aber:

$order = new WC_Order(post->ID);
echo $order->get_order_number();

Lass mich wissen ob es funktioniert. Ich glaube, die Bestellnummer wird mit dem “#” wiedergegeben, aber Sie können das aufteilen, wenn Sie nur die Nummer benötigen.

  • Ich habe das schon einmal gemacht, es funktioniert nicht, das Problem ist, was in WC_Order für den Parameter sein muss, ich denke, ich muss das Cookie löschen und dann den Bestand manuell reduzieren.

    – Moslem

    7. Februar 2014 um 18:55 Uhr

  • (post->ID) was wird es geben ?

    Benutzer2678776

    17. Juni 2016 um 8:33 Uhr

$order = new WC_Order( $post_id ); 

Wenn du

echo $order->id;

dann erhalten Sie die ID der Post zurück, von der aus die Bestellung aufgegeben wurde. Da Sie das bereits haben, ist es wahrscheinlich nicht das, was Sie wollen.

echo $order->get_order_number();

gibt die ID der Bestellung zurück (mit einem # davor). Um das # loszuwerden,

echo trim( str_replace( '#', '', $order->get_order_number() ) );

gemäß der akzeptierten Antwort.

Wie LoicTheAztec hier erwähnt: https://stackoverflow.com/a/67182262/4638682

Sie erhalten dies auf verschiedene Weise innerhalb mehrerer Vorlagen. So:

$order_id = absint( get_query_var('view-order') );

964600cookie-checkWie erhalte ich die Bestell-ID in WooCommerce?

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

Privacy policy