WP Manifestindependent plugin directory
manifest / email / flashify-smtp-manager

Flashify SMTP Manager

A lightweight, production-focused WordPress plugin for configuring SMTP email delivery, with debugging tools, logs, and failed-email retries.

by Shashika De Silva · github.com/shashikadesilva27/flashify-smtp-manager · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/shashikadesilva27/flashify-smtp-manager/archive/refs/heads/main.zip

A lightweight, production-focused WordPress plugin for configuring SMTP email delivery, with debugging tools, logs, and failed-email retries.

Features

  • SMTP configuration management
  • PHPMailer integration
  • Failed email capture
  • Email resend queue
  • Debug log viewer
  • SMTP presets
  • Custom database table for failed emails
  • Admin interface for monitoring delivery issues
  • Lightweight architecture

Technical Highlights

  • Hook-based WordPress architecture
  • Uses phpmailer_init for SMTP injection
  • Uses wp_mail_failed for failure capture
  • Stores failed emails in a custom SQL table
  • Logging support for troubleshooting
  • Class-based plugin structure

Architecture

The plugin is designed as a small set of focused components that hook into WordPress mail flow, capture failures, and provide operational tooling in the admin area.

Components

  • Admin UI

    • Settings page for SMTP configuration and presets
    • Test email tool
    • Log viewer (tail-style)
    • Failed email queue viewer with resend actions
  • Mailer / SMTP Injector

    • Hooks into phpmailer_init
    • Applies configured SMTP host/port/encryption/credentials
    • Sets timeouts and optional SMTP debug output for troubleshooting
  • Failure Capture + Queue

    • Hooks into wp_mail_failed
    • Stores failed emails (to/subject/message/headers/attachments) in a custom table
    • Tracks attempts, last attempt time, and status (queued, sent, dead)
  • Logger

    • Writes operational logs to a file for debugging and audit purposes
    • Used across settings, sending, queue retries, and failure handling

Data Flow

  1. WordPress triggers an email via wp_mail()
  2. phpmailer_init runs and injects SMTP configuration into PHPMailer
  3. If sending fails, wp_mail_failed fires and the plugin records the failure
  4. Admin can review logs and resend queued emails from the dashboard
  5. Retry logic updates attempts and marks messages as sent or dead after max retries

Database

A custom table stores failed emails to avoid polluting wp_posts and to keep queue operations fast:

  • id
  • mail_to
  • mail_subject
  • mail_message
  • mail_headers
  • mail_attachments
  • status
  • attempts
  • error_text
  • created_at
  • last_attempt_at

Use Cases

  • WooCommerce stores
  • Membership systems
  • API-heavy platforms
  • Production email troubleshooting
  • SMTP reliability monitoring

Installation

  1. Upload the plugin folder to /wp-content/plugins/
  2. Activate the plugin
  3. Configure SMTP settings
  4. Send a test email

Security Notes

  • No credentials included
  • Logs should not be publicly accessible
  • Recommended to use environment-specific SMTP credentials

Author

Shashika De Silva
Senior PHP & WordPress Systems Engineer