Magento 2 order e-mail does not show products ordered – e-mail template issue

So you run a Magento 2 store and you’ve updated to v2.3.4. If you have or make new order e-mail templates, like the ones that customers receive when they make a purchase, you’ll notice a …

So you run a Magento 2 store and you’ve updated to v2.3.4. If you have or make new order e-mail templates, like the ones that customers receive when they make a purchase, you’ll notice a problem: the table that shows customers the products they’ve ordered is gone.

And if you check, you should have and probably have the following line containing the correct variable in there: {{layout handle=”sales_email_order_items” order=$order area=”frontend”}}

So why doesn’t it just show up?!

Because since Magento v2.3.4, e-mail templates must be written in strict mode. You can read about migrating custom templates on Magento’s website.

But I am here to offer you a quick fix! Like, changing of a setting fix.

So, how to fix the custom e-mail templates not showing order data on your Magento 2 store?

  1. Log in to your database. Use Phpmyadmin or whatever you fancy.
  2. Find the table named email_templates
  3. Find your desired template, and in the is_legacy column, replace 0 with 1
  4. Clear cache and test. Congrats! Fixed.

And if you suspect any issues with your store’s FPC, here’s a quick read on how to check it.

If you want to support this blog consider joining me on Patreon!

Become a Patron!