Products in my WooCommerce store have a custom field added through Advanced Custom Field plugin store_email_logo
. This field is an image field and I can’t figure out how to output the image in a WooCommerce email.
I tried the code below but it’s not working, it outputs some number instead of an image.
// Tested on WooCommerce version 2.6.x and 3+ — For simple products only.
add_action('woocommerce_email_after_order_table', 'wcv_ingredients_email_logo', 10, 4);
function wcv_ingredients_email_logo( $order, $sent_to_admin, $plain_text, $email ){
foreach($order->get_items() as $item_values){
// Get the product ID for simple products (not variable ones)
$product_id = $item_values['product_id'];
$output = get_post_meta( $product_id, 'store_email_logo', true );
echo ' ' . $output . '<br>';
}
}
2
Answers
try the below code. It may help you.
The “number” that is displaying is the ID of the image that is associated to your product. There are a couple of functions that can output the actual image for you. I am quite partial to the
wp_get_attachment_image_src($image_id, $size)
functionality.