WooCommerceで注文IDを取得するにはどうすればよいですか?
出来た。ただ修正した
global $woocommerce, $post;
$order = new WC_Order($post->ID);
//to escape # from order id
$order_id = trim(str_replace('#', '', $order->get_order_number()));
これは今ではかなり古い質問ですが、誰かが答えを求めてここに来るかもしれません:
echo $order->id;
これにより、「#」なしで注文IDが返されます。
編集(2018年2月)
これを達成する現在の方法は、以下を使用することです。
$order->get_id();
私はそれをテストしませんでしたし、あなたがそれを必要としていたのかわかりませんが、:
$order = new WC_Order(post->ID);
echo $order->get_order_number();
動作するかどうか教えてください。注文番号は「#」とエコーしますが、番号だけが必要な場合は分割できます。
Woocommerce 3.0現在
$order->id;
動作せず、通知を生成し、ゲッター関数を使用します。
$order->get_id();
Procutのような他のwoocommerceオブジェクトにも同じことが当てはまります。
$order = new WC_Order( $post_id );
もし、あんたが
echo $order->id;
注文が行われた投稿のIDが返されます。あなたはすでにそれを持っているので、それはおそらくあなたが望むものではありません。
echo $order->get_order_number();
注文のIDを返します(#を前に付けます)。 #を取り除くには、
echo trim( str_replace( '#', '', $order->get_order_number() ) );
受け入れられた答えに従って。