2017-10-04 2 views
1

Ich erstelle HTML-E-Mail-Vorlage auf woocomerce 3+, aber ich kann keine Werbebuchung mit Bestell-ID erhalten. Ich habe das versucht, aber nicht für mich gearbeitet.Holen Sie sich Werbemittel woocommerce

<?php 
     $order = wc_get_order($order_id); 
     $order_items = $order->get_items(); 
      foreach ($order_items as $item_id => $item_data) { 
      $product_name = $item_data['name']; 
      $item_quantity = $order->wc_get_order_item_meta($item_id, '_qty', true); 
      $item_total = $order->wc_get_order_item_meta($item_id, '_line_total', true); 

      echo 'Product name: '.$product_name.' | Quantity: '.$item_quantity.' | Item total: '. $item_total; 
     } 
?> 

Jede Hilfe sehr geschätzt.

Danke.

+0

In den meisten aller WooCommerce E-Mail-Vorlagen das '$ order' Objekt existiert, ** nicht aber die Bestell-ID **, so sollten Sie versuchen,' $ order = wc_get_order zu ersetzen ($ order_id); 'nach' global $ order; '... Es sollte funktionieren. Jetzt ist Ihre Frage nicht wirklich detailliert darüber, was Sie getan haben und wo ... – LoicTheAztec

Antwort

0

Versuchen mit folgendem Code

add_action('init','orderLineItem'); 
function orderLineItem() 
{ 
    $orderId = 523; //put your dynamic order id or static id 
    $order = wc_get_order($orderId); 
    foreach ($order->get_items() as $item_key => $item_values) { 
     $item_data = $item_values->get_data(); 
     echo $product_name = $item_data['name']; 
     echo $quantity = $item_data['quantity']; 
     echo $line_total = $item_data['total']; 
    } 
} 
Verwandte Themen