3

これは、WC に存在しないことが私に衝撃を与える機能です。製品を選択して、それを購入したすべての顧客のリストを取得できる必要があります。明らかに必要なようですが、これを行うためのプラグインさえ見つかりません。

特に、イベントへの入場券を販売しており、ドアの作業をしている人々が使用できる名前のリストを印刷できるようにする必要があります。彼らは、その人がリストに載っているかどうかを確認する必要があります。

私は php のやつで、プラグインの書き方を学んだり、単純に functions.php にフックを追加したりできます。

1 つの解決策として、商品の名前を表示するカスタム列を注文ページに追加することが考えられます。その後、その列で並べ替えることができます。これは比較的簡単で、非効率的ではありますが、仕事を成し遂げることができます。

製品詳細ページに統合して購入レポートを提供するプラグインを作成できれば、それは素晴らしいことです。

この情報を取得するクリーンな方法は何ですか?

4

1 に答える 1

0

これは遅いかもしれませんが、誰かを助けると確信しています。OPとまったく同じ要件に遭遇し、解決策を見つけることができませんでした。神に感謝します私はコーディングのビットを知っているので、ここに私の回避策があります.

解決策:製品ループ、つまり "content-single-product.php" にいることを考慮して、このコードは現在の製品の注文のすべての IDS を取得します。ID を取得したら、簡単に注文をいじることができます。

       $orderIDs = get_post_meta(get_the_ID(), "orderids", true); 
       foreach($orderIDs as $IDs)
       {
           if(!empty($IDs)){
                   echo "<p>".$IDs."</p>";          
                   $orderInfo = new WC_Order( $IDs );           
                   echo "<p>".$orderInfo->billing_first_name."</p>";       
                   echo "<p>".$orderInfo->billing_email."</p>";            
           }
       }

「billing_first_name」「billing_email」は、「wp_usermeta」テーブルにあるメタキーです。さまざまなキーを入力して、要件に応じて目的の値を取得できます。

ループの外にいる場合は、グローバル投稿変数を定義して、製品の ID を取得できます。

これは最良の選択肢ではないかもしれませんが、少なくとも機能しています。他の誰かがアプローチを改善できることを願っています。ありがとうございました。

于 2015-10-26T11:32:26.437 に答える