Notifications on Discord for Easy Digital Downloads

Changelog

2.0.0

  • New Feature: Added @mention support per status – specify @here, @everyone, or a Discord role ID to ping your team for critical events
  • New Feature: Added per-status color picker – choose a custom embed color for each notification directly from the settings page, with sensible defaults pre-selected
  • New Feature: Added test notification button per webhook – sends a live test embed to Discord directly from the settings page
  • New Feature: Added customer details to order embeds – customer name, email, and country with flag emoji
  • New Feature: Added Discord notification log with enable/disable toggle, configurable auto-purge retention period (default 7 days), manual purge option, and daily cron cleanup
  • New Feature: Added ppsndw_edd_discord_payload filter to allow customisation of the data sent to Discord
  • New Feature: Added uninstall.php – removes log table, all plugin options, and scheduled cron events when the plugin is deleted (opt-in via settings)
  • Enhancement: Redesigned settings page with tabbed layout (Notifications and Logs) and compact single-row-per-status table
  • Enhancement: Moved settings page to Downloads > Discord Notifications
  • Enhancement: Added status-specific embed colors – green for complete, amber for pending, blue for processing/pre-approved, red for failed/revoked/cancelled, grey for abandoned
  • Enhancement: Added Discord embed field truncation to respect API limits (title 256 chars, field values 1024 chars)
  • Enhancement: Added response code capture – the HTTP status returned by Discord is logged alongside each notification entry
  • Enhancement: Added load_plugin_textdomain() so translation files in /languages are properly loaded
  • Enhancement: Updated Tested Up To for WordPress 6.8
  • Security: Added defined(‘ABSPATH’) || exit guard to all PHP include files to prevent direct file access
  • Security: Escaped all dynamic output in the settings page with esc_html(), esc_attr(), and esc_url()
  • Security: Sanitize webhook URLs with esc_url_raw() instead of sanitize_text_field()
  • Security: Added wp_unslash() before sanitizing POST values to correctly handle WordPress magic quotes
  • Security: Replaced date() with gmdate() for timezone-safe timestamp generation
  • Security: Added nonce verification and capability checks to all form submissions and AJAX handlers

1.0.0

  • Initial release

Plugin Website
Visit website

Author
Jarryd Long
Version:
2.0.0
Last Updated
April 27, 2026
Active Installs
10
Requires
WordPress 5.4
Tested Up To
WordPress 6.8.5
Requires PHP
7.1

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.