2014-06-23 5 views
0

WooCommerce 사용자 정의에서 반복적 인 문제가 있습니다 : 함수 내에서 현재 주문 ID를 얻는 방법.WooCommerce 주문 ID를 후크에 전달하기

일부 후크는 $ order_id로 전달할 수 있지만 특정 주문에 대한 사용자 계정 페이지의 컨텍스트에서는 아래와 같이 작동하지 않습니다.

문제는 $order_id이 비어 있다는 것입니다. 하지만이 함수에 순서의 ID를 어떻게 전달합니까?

add_action('woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table'); 
function xcsn_woocommerce_order_items_table ($order_id) { 

    $order = new WC_Order($order_id); 

    echo 'The order ID is: ' . $order->get_order_number(); 

    // or 

    echo '<br>The order ID is: ' . $order->id; 

} 

나는이 시도하지만, 사용자 ID 번호, 순서가 아니라 반환

global $woocommerce; 
$order = new WC_Order($post->ID); 
echo 'The Order ID: ' . $order->get_order_number(); 

어떤 제안?

답변

0

이 (아니지만 일반 질문) 위의 특정 문제를 해결 :

add_action('woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table'); 
function xcsn_woocommerce_order_items_table ($order) { 

    echo $order->id; //This is the order id, even in the user Accounts>Order page 

} 
0
add_action('woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table',10,2); 
function xcsn_woocommerce_order_items_table ($order_id) { 
    $order = new WC_Order($order_id); 
    echo 'The order ID is: ' . $order->get_order_number(); 
    // or 
    echo '<br> 
    The order ID is: ' . $order_id; 

} 

확인 당신이이 이후에 주문 ID를 반환, 작업에 10,2을 추가해야이 이 기능이 없으면 주문을 제출하기 전에 함수가 실행되므로 주문 ID는 0 또는 null

+0

일 수 있습니다. 아무 것도 반환하지 않습니다. – huykon225

관련 문제