get_billing_first_name(); $last_name = $order->get_billing_last_name(); $postcode = $order->get_billing_postcode(); $items = $order->get_items(); $total_items = $order->get_item_count(); $roast_date = (new DateTime())->modify("-3 days")->format("d/m/Y"); $gift_message = $order->get_meta("_shipping_gift_message"); $order_subscription_coffees = get_field("coffees", $order_id); $j = 0; // Reset $j for each order (claude suggested this) foreach ($items as $item) { // checking if product is a coffee $product_id = $item->get_product_id(); $product_categories = get_the_terms($product_id, "product_cat"); $is_coffee = false; $is_subscription = false; if ( !empty($product_categories) && !is_wp_error($product_categories) ) { foreach ($product_categories as $product_category) { if ($product_category->slug == "coffee") { $is_coffee = true; break; } elseif ($product_category->slug == "tasting") { $is_subscription = true; break; } } } if ($is_coffee || $is_subscription) { $brew_method = $item->get_meta("pa_brew-method"); $weight = $item->get_meta("weight"); } else { $product_name = $item->get_name(); } if ($is_coffee) { // Non-subscription order $product_name = $item->get_name(); $roast = get_field("roast_level", $product_id); $is_organic = get_field("is_organic", $product_id); } if ($is_subscription) { $subscriptions = wcs_get_subscriptions_for_order($order_id, [ "order_type" => "any", ]); // TODO log / admin warning if there are >1 subscriptions $subscription = array_pop($subscriptions); $orders = $subscription->get_related_orders("ids", "any"); if (sizeof($orders) == 1) { $is_new = true; } } $quantity = $item->get_quantity(); for ($i = 0; $i < $quantity; $i++) { if ($is_subscription) { $coffee = $order_subscription_coffees[$i + $j]["coffee"]; $product_name = $coffee->post_title; $roast = get_field("roast_level", $coffee->ID); $is_organic = get_field("is_organic", $coffee->ID); } ?>

">

Roast

Roasted on: