---
title: "Advanced Troubleshooting: Logs, Delays, and Shortcodes"
description: Custom WooCommerce email behaving oddly? Read the debug log and check delays, shortcodes and conditional content.
url: "https://wpfactory.com/docs/advanced-troubleshooting-email/"
updated: "2026-10-05"
category: Troubleshooting
tags:
  - Additional Custom Emails for WooCommerce
---

# Advanced Troubleshooting: Logs, Delays, and Shortcodes

When a custom email from Additional Custom Emails & Recipients for WooCommerce sends late, shows broken shortcodes, or formats oddly, start with the debug log. Enable Debug under WPFactory > Custom Emails > General > Advanced Options, then open WooCommerce > Status > Logs and select the custom-emails-for-woocommerce source to see what the plugin did.

### Read the debug log

Enable **Debug** under **WPFactory > Custom Emails > General > Advanced Options**, then open **WooCommerce > Status > Logs** and select the `custom-emails-for-woocommerce` source. Each attempt records the trigger that fired, whether an option blocked it, whether it was delayed, and the final send result. This is the fastest way to see what the plugin actually did.

### Delayed emails did not arrive on time

- Delayed emails wait in the queue. Check **WPFactory > Custom Emails > Scheduled** to confirm the send is queued and see its scheduled time.
- **WP Cron** runs on site traffic, so a very quiet store can fire late. Switch the **Scheduler** to **Action Scheduler** for more reliable timing.
- If a delayed email should have self-cancelled (the order changed after it was queued), add a **Require order status** or **Exclude order status** condition so it is skipped when it finally runs.

### Shortcodes or conditional content not working

- Use single brackets, for example `[order_number]`, not double brackets.
- Inside a shortcode attribute, nest other shortcodes with braces: `value1="{order_total}"`.
- `[order_func]` and `[product_func]` return nothing until you allowlist the method name through the `wpfactory_wc_custom_emails_shortcode_order_func` or `wpfactory_wc_custom_emails_shortcode_product_func` filter.
- If you copied older sample code, update `alg_wc_custom_emails()` to `wpfactory_wc_custom_emails()`. The prefix changed in version 3.7.3.
- An empty value makes a shortcode output nothing at all, including its `before` and `after` text.

### Content formatting looks wrong

If paragraphs collapse or extra line breaks appear in HTML emails, check the **Replace line breaks** option under General > Advanced Options. It runs content through WordPress `wpautop()`. Turn it off when you are pasting fully formed HTML.

### Still stuck?

Share your Debug log on the [Custom Emails support forum](https://wpfactory.com/support/item/custom-emails-for-woocommerce/) and our team will take a look.

Related articles

- [Custom Email Not Sending: Troubleshooting](https://wpfactory.com/docs/custom-email-troubleshooting/)
- [Shortcodes and Placeholders Reference](https://wpfactory.com/docs/shortcodes-placeholders-reference/)
- [Understanding Custom Emails: Triggers, Delays, and Scheduling](https://wpfactory.com/docs/custom-email-insights/)
- [Custom Emails Settings: General and Advanced Options](https://wpfactory.com/docs/woocommerce-email-settings/)
- [Custom Email Preview Shows the Wrong or Old Content](https://wpfactory.com/docs/custom-email-preview-wrong-content/)

 

[![Additional Custom Emails for WooCommerce](https://wpfactory.com/wp-content/uploads/Custom-Emails-for-WooCommerce.webp)](https://wpfactory.com/item/custom-emails-for-woocommerce/)
