Получить идентификатор заказа от wc_get_order_item_meta - PullRequest
1 голос
/ 17 февраля 2020

Я генерирую QR-код на моей странице загрузок woocmmerce, получая сохраненное значение кода ваучера и генерируя токен, вызывая значение ваучера. В конце QR должен представлять URL + код ваучера + код заказа. Но я не могу получить идентификатор заказа для этой конкретной c загрузки. Любой возможный способ добиться этого. Ниже мой код

<?php
// include 'phpqrcode/qrlib.php';
$prefix = WOO_VOU_META_PREFIX;
$forc = 0;
         foreach ( $downloads as $download ) :

         $d=explode('&', $download['download_url']);

 $codes_item_meta = '';
  $querurl = '';

         $val =  str_replace('item_id=', '', $d[4]);
         $ks =   $d[3];
         $item = new WC_Order_Item_Product($val);

         $ib = 0;
         $cn  = substr($ks, -1)-1;
         $codes_item_meta = [];
         $cnn = [];
        for($i=0; $i<15; $i++){

            $codes_item_meta2    =  wc_get_order_item_meta($val , 'Voucher Code_'.$i , true);
            if($codes_item_meta2 != ""){
                $codes_item_meta[]   =  wc_get_order_item_meta($val , 'Voucher Code_'.$i , true);

                $cnn[]   =  $i;
            }

        }


    /*--------------------------------------Generate QR token END------------------------*/
        $tktest=wc_get_order_item_meta($val , 'Voucher Code_'.$forc , true);

        $order123 = new WC_Order( $order_id );

        $tk= getqrtoken($tktest) ;


        if($cnn[$cn]){
            $download['download_url'] .= '&df='.$cnn[$cn];

            $querurl = $url.wc_get_order_item_meta($val , 'Voucher Code_'.$cnn[$cn] , true); 
        }else{
            $url2='www.example.com';
            $vouchercode=wc_get_order_item_meta($val , 'Voucher Code_'.$cnn[$cn] , true); 
            $download['download_url'] .= '&df='.$forc;
            $querurl = $url2.$tk.{order_id};

        }

1 Ответ

0 голосов
/ 17 февраля 2020
$order_id = wc_get_order_id_by_order_item_id($val);

код выше работал в моем случае,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...