A breaking rename of the shortcode and hooks, stricter storefront escaping, and Freemius removed entirely.
Upgrade notice. Breaking: the shortcode is now [devmerx_delivery_estimate] and hooks are devmerx_dde_* — update any page or custom code using the old names. The default message template also changed, so uncustomised storefront wording will change. Settings and past order estimates carry over.
- ChangedThe [estimated_delivery] shortcode is renamed to [devmerx_delivery_estimate]. If you placed the old shortcode in a page, update it — the old tag no longer renders anything.
- ChangedEvery hook and filter is renamed from dde_* to devmerx_dde_*. Custom code hooking into the plugin must be updated.
- ChangedEvery stored setting, per-product override and saved order estimate moved to a longer, collision-proof storage prefix. Existing data is read automatically; nothing needs re-entering.
- ChangedThe Freemius integration is removed entirely. The plugin now contacts no external service and makes no outbound network request of any kind.
- ImprovedStorefront output passes through a strict allowlist, so a filter or a tampered stored value cannot inject scripts into a product, cart, checkout or order page.
- FixedA settings tab added by an add-on can no longer take down the whole settings screen.
- ChangedThe default message template is now “Estimated delivery: {date}” instead of “Estimated delivery: {min_date} - {max_date}”, so the Display mode setting governs the default wording out of the box.
- FixedThe Display mode setting had no effect on what shoppers saw. All six modes — date range, exact date, earliest date, latest date, duration and relative — now genuinely change how the {date} token renders.
- FixedThe estimate did not appear in the Cart and Checkout blocks. The bundled block script was out of date and requested the estimate under a name the plugin no longer published.