問題描述

我對 Woocommerce 的產品細節和訂單詳細資訊的關係有困難。我無法在 Woocommerce 主題的 「檢視訂單」 頁面上找到相關訂單 ID 的產品 ID 。我只想在 「檢視訂單」 頁上獲取產品內容和永久連結等。

我試過在 wp_postmeta 搜尋,但沒有運氣。

最佳解決方案

你可以得到訂單的訂單

$order = new WC_Order( $order_id );
$items = $order->get_items();

那麼如果你迴圈使用它們,你可以獲得所有相關資料:

foreach ( $items as $item ) {
    $product_name = $item['name'];
    $product_id = $item['product_id'];
    $product_variation_id = $item['variation_id'];
}

一個很好的提示是檢查管理員訂單頁面如何獲取資料,你會發現很多答案在那裡!

次佳解決方案

我曾經做過,並取得了一些成果。我想分享給其他開發者。這不是首選的方法,但是為了知識,我釋出了我的答案。

global $wpdb;
            $result = $wpdb->get_results('select t1.order_item_id, t2.* FROM 
            wp_woocommerce_order_items as t1 JOIN wp_woocommerce_order_itemmeta as t2 ON t1.order_item_id = t2.order_item_id
            where t1.order_id='.$order->ID);
            echo '<pre>';
            print_r($result);
            echo '</pre>'; 

希望會幫助某人。

另外:

更好地使用 wordpress 表字首,以避免在多個網站或遷移等問題。

global $wpdb;
$table_name = $wpdb->prefix . 'table_name'; 

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。