{"id":318279,"date":"2026-06-11T12:41:20","date_gmt":"2026-06-11T12:41:20","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/smtp-manager-by-bytecore-stack\/"},"modified":"2026-06-20T13:51:27","modified_gmt":"2026-06-20T13:51:27","slug":"bcs-smtp-manager","status":"publish","type":"plugin","link":"https:\/\/hu.wordpress.org\/plugins\/bcs-smtp-manager\/","author":23505918,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"7.0","requires":"5.3","requires_php":"7.2","requires_plugins":null,"header_name":"SMTP Manager \u2013 Email Logs, Monitoring & Alerts","header_author":"ByteCore Stack","header_description":"Send WordPress emails via any SMTP server. Logs every delivery, monitors SMTP health via WP-Cron, and alerts your team on Slack or Microsoft Teams when sending fails.","assets_banners_color":"626a7b","last_updated":"2026-06-20 13:51:27","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/bytecorestack.com\/plugins\/smtp-manager\/","header_author_uri":"https:\/\/bytecorestack.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":113,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"bytecorestack","date":"2026-06-11 12:25:11"},"1.1.0":{"tag":"1.1.0","author":"bytecorestack","date":"2026-06-20 13:51:27"}},"upgrade_notice":{"1.1.0":"<p>Major update: full admin UI redesign, renamed to &quot;SMTP Manager \u2013 Email Logs, Monitoring &amp; Alerts&quot; (slug unchanged), 3 new alert channels (Google Chat, Discord, Custom Webhook), a Dashboard widget, password encryption, and SSRF-hardened webhooks. Settings migrate automatically.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3568869,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3568869,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3568827,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":499},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3568827,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3579822,"resolution":"1","location":"assets","locale":"","width":1280,"height":800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3579822,"resolution":"2","location":"assets","locale":"","width":1280,"height":800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3579822,"resolution":"3","location":"assets","locale":"","width":1280,"height":800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3579822,"resolution":"4","location":"assets","locale":"","width":1280,"height":800},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3579822,"resolution":"5","location":"assets","locale":"","width":1280,"height":800},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3579822,"resolution":"6","location":"assets","locale":"","width":1280,"height":800},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3579822,"resolution":"7","location":"assets","locale":"","width":1280,"height":800},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3579822,"resolution":"8","location":"assets","locale":"","width":1280,"height":800},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3579822,"resolution":"9","location":"assets","locale":"","width":1280,"height":800}},"screenshots":{"1":"Dashboard overview \u2014 SMTP authentication status and recent email log activity at a glance","2":"SMTP server connection panel \u2014 host, port, encryption, and credentials in one place","3":"Email log \u2014 full delivery history with search, status filters, and automatic log retention","4":"Email report \u2014 visual delivery chart with scheduled report configuration","5":"Send Test Email \u2014 verify your SMTP configuration and delivery instantly","6":"Alerts tab \u2014 enabling automated SMTP health monitoring","7":"Alert channel setup \u2014 Slack, Microsoft Teams, Google Chat, Discord, or a custom webhook","8":"SMTP configuration \u2014 encryption, authentication, and provider-specific settings","9":"A live failure alert delivered to a chat channel \u2014 real-time SMTP notification in action"}},"plugin_section":[262246],"plugin_tags":[17561,267,26736,6696,268076],"plugin_category":[41],"plugin_contributors":[266332],"plugin_business_model":[],"class_list":["post-318279","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-deliverability","plugin_tags-email","plugin_tags-email-log","plugin_tags-smtp","plugin_tags-smtp-alerts","plugin_category-communication","plugin_contributors-bytecorestack","plugin_committers-bytecorestack"],"banners":{"banner":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/banner-772x250.png?rev=3568827","banner_2x":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/banner-1544x500.png?rev=3568827","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/icon-128x128.png?rev=3568869","icon_2x":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/icon-256x256.png?rev=3568869","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-1.png?rev=3579822","caption":"Dashboard overview \u2014 SMTP authentication status and recent email log activity at a glance"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-2.png?rev=3579822","caption":"SMTP server connection panel \u2014 host, port, encryption, and credentials in one place"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-3.png?rev=3579822","caption":"Email log \u2014 full delivery history with search, status filters, and automatic log retention"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-4.png?rev=3579822","caption":"Email report \u2014 visual delivery chart with scheduled report configuration"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-5.png?rev=3579822","caption":"Send Test Email \u2014 verify your SMTP configuration and delivery instantly"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-6.png?rev=3579822","caption":"Alerts tab \u2014 enabling automated SMTP health monitoring"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-7.png?rev=3579822","caption":"Alert channel setup \u2014 Slack, Microsoft Teams, Google Chat, Discord, or a custom webhook"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-8.png?rev=3579822","caption":"SMTP configuration \u2014 encryption, authentication, and provider-specific settings"},{"src":"https:\/\/ps.w.org\/bcs-smtp-manager\/assets\/screenshot-9.png?rev=3579822","caption":"A live failure alert delivered to a chat channel \u2014 real-time SMTP notification in action"}],"raw_content":"<!--section=description-->\n<p><strong>Is your WordPress site silently failing to send emails?<\/strong> Order confirmations, password resets, contact form notifications, shipping updates \u2014 when they don't land in the inbox, you're usually the last person to find out, often from an angry customer. SMTP Manager \u2013 Email Logs, Monitoring &amp; Alerts is the WordPress SMTP plugin that fixes email deliverability at the source, logs every single send, and alerts your team the instant delivery breaks again \u2014 on Slack, Microsoft Teams, Google Chat, or Discord, completely free.<\/p>\n\n<p>Most WordPress SMTP plugins stop the moment your email starts sending again. This one keeps going: continuous SMTP health monitoring, a fully searchable email log with CSV export, scheduled delivery reports, and real-time failure alerts that many competing SMTP plugins lock behind a paid upgrade.<\/p>\n\n<h4>Why your WordPress emails are failing<\/h4>\n\n<p>By default, WordPress sends email through your server's PHP <code>mail()<\/code> function. PHP mail has no authentication \u2014 no SPF, no DKIM, nothing that proves to Gmail, Outlook, or Yahoo that the message is legitimate. Most inbox providers either bin it as spam or drop it outright. That's why \"WordPress not sending email\" is one of the most common WordPress problems there is, and why every serious site needs proper SMTP \u2014 authenticated, encrypted mail delivery through a real mail server or transactional email provider.<\/p>\n\n<h4>How SMTP Manager fixes it<\/h4>\n\n<p>The plugin reconfigures <code>wp_mail()<\/code> to send through the authenticated SMTP server you configure \u2014 your hosting provider, Gmail, Microsoft 365, or any transactional email service (SendGrid, Mailgun, Amazon SES, Brevo, Zoho, SMTP.com, and others all work over standard SMTP). Every email is logged with its delivery status, and an automated health check keeps testing your connection in the background \u2014 so instead of finding out about a broken mail server from an angry customer, you find out from a Slack message.<\/p>\n\n<h4>\u2705 Core features<\/h4>\n\n<ul>\n<li><strong>Universal SMTP connection<\/strong> \u2014 host, port, and encryption (SSL \/ TLS \/ none) for any standard SMTP provider, with auto-TLS upgrade support<\/li>\n<li><strong>Built-in quick-reference for popular providers<\/strong> \u2014 Gmail \/ Google Workspace, Microsoft 365 \/ Outlook, Yahoo Mail, SendGrid, Amazon SES, and Mailgun host\/port\/encryption settings, right inside the settings page<\/li>\n<li><strong>Full email log<\/strong> \u2014 date, subject, sender, recipient, delivery status, and the actual error message for every email <code>wp_mail()<\/code> sends<\/li>\n<li><strong>AJAX-driven search and filtering<\/strong> \u2014 live search-as-you-type plus date-range presets (today through all time), no page reloads<\/li>\n<li><strong>CSV export<\/strong> of the filtered log for record-keeping or support tickets<\/li>\n<li><strong>One-click \"Send Test Email\"<\/strong> to verify your configuration instantly, with failure-type classification (authentication failure, SMTP rejection, or plugin\/system error) so you know exactly what's wrong<\/li>\n<li><strong>Scheduled HTML delivery reports<\/strong> \u2014 daily, weekly, or monthly summary emails with a visual chart of sent\/failed\/unconfirmed volume<\/li>\n<li><strong>Automatic log retention<\/strong> \u2014 keep the last 30 days or the last 1,000 records, pruned automatically<\/li>\n<li><strong>WordPress Dashboard widget<\/strong> \u2014 SMTP health and 30-day send volume at a glance, without opening the plugin's settings page<\/li>\n<li><strong>Encrypted password storage<\/strong> \u2014 your SMTP password is encrypted at rest, not stored as plaintext<\/li>\n<li><strong>Dark-mode admin UI<\/strong> built for clarity, not just decoration<\/li>\n<\/ul>\n\n<h4>\ud83d\udd14 Real-time failure alerts \u2014 completely free<\/h4>\n\n<p>This is the feature most SMTP plugins put behind a premium plan. Here, it's free:<\/p>\n\n<ul>\n<li><strong>Automated SMTP health checks<\/strong> via WordPress Cron \u2014 a real connection + EHLO + STARTTLS + AUTH test on the interval you choose, with no test email sent on success<\/li>\n<li><strong>Five alert channels<\/strong>: Slack, Microsoft Teams, Google Chat, Discord, and a Custom Webhook option that POSTs a structured JSON payload (<code>event<\/code>, <code>site_name<\/code>, <code>error_msg<\/code>, <code>consecutive_failures<\/code>, and more) for Zapier, Make, n8n, or your own endpoint<\/li>\n<li><strong>Configurable failure threshold<\/strong> \u2014 alert after 1 failure or wait for N consecutive failures, your choice<\/li>\n<li><strong>Notification cap<\/strong> so a prolonged outage doesn't spam your channel forever<\/li>\n<li><strong>External provider status check<\/strong> \u2014 when an alert fires, the plugin checks whether the failure looks like an outage on your provider's end before notifying you<\/li>\n<li>All webhook URLs are validated against the provider's real domain and sent over <code>wp_safe_remote_post()<\/code>, so a misconfigured webhook can't be used to reach internal network addresses<\/li>\n<\/ul>\n\n<h4>\ud83d\udd0c Works with everything that uses wp_mail()<\/h4>\n\n<p>WooCommerce, Contact Form 7, WPForms, Gravity Forms, Elementor Forms, user registration\/password reset emails, and literally any other plugin or theme that sends mail through WordPress's standard <code>wp_mail()<\/code> function \u2014 because that's exactly what this plugin hooks into. Nothing to reconfigure on the form\/store plugin side.<\/p>\n\n<h4>\ud83c\udf10 Supported SMTP providers<\/h4>\n\n<p>Anything that speaks standard SMTP with host\/port\/username\/password authentication works, because the plugin talks SMTP directly rather than locking you into a specific provider's proprietary API:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/myaccount.google.com\/apppasswords\">Gmail \/ Google Workspace<\/a> (App Passwords, or <a href=\"https:\/\/support.google.com\/a\/answer\/2956491\">Workspace SMTP relay<\/a> for higher volume)<\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/exchange\/mail-flow-best-practices\/how-to-set-up-a-multifunction-device-or-application-to-send-email-using-microsoft-365-or-office-365\">Microsoft 365 \/ Outlook<\/a><\/li>\n<li><a href=\"https:\/\/docs.sendgrid.com\/for-developers\/sending-email\/getting-started-smtp\">SendGrid<\/a><\/li>\n<li><a href=\"https:\/\/documentation.mailgun.com\/docs\/mailgun\/user-manual\/sending-messages\/\">Mailgun<\/a><\/li>\n<li><a href=\"https:\/\/docs.aws.amazon.com\/ses\/latest\/dg\/send-email-smtp.html\">Amazon SES<\/a><\/li>\n<li><a href=\"https:\/\/help.brevo.com\/hc\/en-us\/articles\/209462765\">Brevo<\/a><\/li>\n<li><a href=\"https:\/\/www.zoho.com\/mail\/help\/\">Zoho Mail<\/a><\/li>\n<li>Yahoo Mail, SMTP.com, or your own hosting provider's mail server<\/li>\n<\/ul>\n\n<h4>\ud83c\udd9a How this is different<\/h4>\n\n<p>Most SMTP plugins solve half the problem: they get your email sending again, and stop there. If the connection breaks again next month \u2014 expired app password, host changed something, provider outage \u2014 you won't know until someone tells you. Many plugins in this category also reserve email alerting (Slack, Teams, Discord notifications) for their paid tier. SMTP Manager \u2013 Email Logs, Monitoring &amp; Alerts treats failure alerting as core functionality, not an upsell, because a delivery plugin that can't tell you when delivery breaks isn't finished doing its job.<\/p>\n\n<h4>Documentation &amp; support<\/h4>\n\n<p>Full plugin details: <a href=\"https:\/\/bytecorestack.com\/plugins\/smtp-manager\/\">bytecorestack.com\/plugins\/smtp-manager<\/a>. For SMTP protocol background, see the <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_mail\/\">WordPress wp_mail() developer reference<\/a>.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin may contact the following external services. All connections are either user-initiated or require explicit configuration by the site administrator.<\/p>\n\n<p><strong>1. Your SMTP server (user-configured)<\/strong>\nThe plugin routes all WordPress emails through the SMTP server credentials you enter in Settings \u2192 SMTP Manager. The hostname, port, username, and password are provided entirely by you. No data is sent to any ByteCore Stack server.<\/p>\n\n<p><strong>2. Slack Incoming Webhooks (optional)<\/strong>\nIf you enable Slack alerts, the plugin will POST a JSON failure notification to the Slack Incoming Webhook URL you provide when consecutive SMTP failures are detected. This URL is specific to your Slack workspace and is created by you.\n* Service: Slack Technologies, LLC\n* Privacy policy: https:\/\/slack.com\/privacy-policy\n* Terms of service: https:\/\/slack.com\/terms-of-service<\/p>\n\n<p><strong>3. Microsoft Teams Incoming Webhooks (optional)<\/strong>\nIf you enable Teams alerts, the plugin will POST a JSON failure notification to the Teams Incoming Webhook URL you provide when consecutive SMTP failures are detected. This URL is specific to your Teams channel and is created by you.\n* Service: Microsoft Corporation\n* Privacy policy: https:\/\/privacy.microsoft.com\/en-us\/privacystatement\n* Terms of service: https:\/\/www.microsoft.com\/en-us\/servicesagreement<\/p>\n\n<p><strong>4. Google Chat Incoming Webhooks (optional)<\/strong>\nIf you enable Google Chat alerts, the plugin will POST a JSON failure notification to the Google Chat Incoming Webhook URL you provide when consecutive SMTP failures are detected. This URL is specific to your Chat space and is created by you.\n* Service: Google LLC\n* Privacy policy: https:\/\/policies.google.com\/privacy\n* Terms of service: https:\/\/policies.google.com\/terms<\/p>\n\n<p><strong>5. Discord Incoming Webhooks (optional)<\/strong>\nIf you enable Discord alerts, the plugin will POST a JSON failure notification to the Discord Incoming Webhook URL you provide when consecutive SMTP failures are detected. This URL is specific to your Discord channel and is created by you.\n* Service: Discord Inc.\n* Privacy policy: https:\/\/discord.com\/privacy\n* Terms of service: https:\/\/discord.com\/terms<\/p>\n\n<p><strong>6. Custom Webhook (optional)<\/strong>\nIf you enable the Custom Webhook channel, the plugin will POST a structured JSON failure notification to the URL you provide when consecutive SMTP failures are detected. This URL is entirely user-supplied \u2014 point it at Zapier, Make, n8n, or your own server. No data is sent unless you configure this channel.<\/p>\n\n<p><strong>7. Google Fonts API<\/strong>\nThe admin settings page loads two typefaces (DM Sans and DM Mono) from the Google Fonts API to render the admin UI. This request is made only by the administrator's browser when visiting the plugin settings page. No personal data from site visitors is ever transmitted.\n* Service: Google LLC\n* Privacy policy: https:\/\/policies.google.com\/privacy\n* Terms of service: https:\/\/policies.google.com\/terms\n* Font API endpoint: https:\/\/fonts.googleapis.com\/<\/p>\n\n<p>No data is collected, transmitted to, or processed by ByteCore Stack servers.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>bcs-smtp-manager<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install directly from the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Go to <strong>Settings \u2192 SMTP Manager<\/strong> and enter your SMTP host, port, encryption, and credentials (use the built-in provider quick-reference if you're not sure what to enter).<\/li>\n<li>Click <strong>Save Settings<\/strong> \u2014 the plugin runs a connection test immediately and tells you if it worked.<\/li>\n<li>Use <strong>Send Test Email<\/strong> to confirm an actual message is delivered end-to-end.<\/li>\n<li>Open the <strong>Alerts<\/strong> tab, enable a channel (Slack, Teams, Google Chat, Discord, or a custom webhook), and turn on automated health monitoring so you're notified the next time something breaks.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20smtp%20and%20why%20do%20i%20need%20it%20for%20wordpress%3F\"><h3>What is SMTP and why do I need it for WordPress?<\/h3><\/dt>\n<dd><p>SMTP (Simple Mail Transfer Protocol) is the standard, authenticated way to send email. WordPress's default <code>mail()<\/code> function has no authentication, which is why its messages are frequently marked as spam or rejected outright by Gmail, Outlook, and Yahoo. Routing through a real SMTP connection \u2014 your host, Gmail, Microsoft 365, or a transactional provider \u2014 fixes that.<\/p><\/dd>\n<dt id=\"why%20isn%27t%20my%20wordpress%20site%20sending%20emails%20right%20now%3F\"><h3>Why isn't my WordPress site sending emails right now?<\/h3><\/dt>\n<dd><p>The most common causes are: your host has disabled the PHP <code>mail()<\/code> function, your SMTP credentials are wrong or expired (Gmail\/Microsoft App Passwords expire or get revoked), the wrong port\/encryption combination is selected, or your host blocks outbound SMTP ports entirely. Use <strong>Send Test Email<\/strong> in this plugin \u2014 it classifies the failure (authentication, rejection, or system error) so you know which of these it is instead of guessing.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20gmail%3F\"><h3>Does this work with Gmail?<\/h3><\/dt>\n<dd><p>Yes. You must use a Gmail App Password \u2014 Google no longer allows regular account passwords for third-party SMTP clients. Enable 2-Step Verification on your Google account, then generate an App Password under <a href=\"https:\/\/myaccount.google.com\/apppasswords\">Security \u2192 App Passwords<\/a>.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20outlook%20%2F%20microsoft%20365%3F\"><h3>Does this work with Outlook \/ Microsoft 365?<\/h3><\/dt>\n<dd><p>Yes. Use your Microsoft 365 account password or an app password. Set the host to <code>smtp.office365.com<\/code>, port <code>587<\/code>, encryption <code>TLS<\/code>. See Microsoft's <a href=\"https:\/\/learn.microsoft.com\/en-us\/exchange\/mail-flow-best-practices\/how-to-set-up-a-multifunction-device-or-application-to-send-email-using-microsoft-365-or-office-365\">official SMTP relay setup guide<\/a> if you need app-specific credentials or hit a sending limit.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20google%20workspace%20%28not%20just%20regular%20gmail%29%3F\"><h3>Does this work with Google Workspace (not just regular Gmail)?<\/h3><\/dt>\n<dd><p>Yes. Google Workspace also supports a <a href=\"https:\/\/support.google.com\/a\/answer\/2956491\">dedicated SMTP relay service<\/a> for higher sending limits than a personal Gmail App Password allows \u2014 useful if you're sending a high volume of transactional email.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20sendgrid%2C%20mailgun%2C%20amazon%20ses%2C%20brevo%2C%20or%20zoho%3F\"><h3>Does this work with SendGrid, Mailgun, Amazon SES, Brevo, or Zoho?<\/h3><\/dt>\n<dd><p>Yes \u2014 any provider that offers SMTP relay credentials works, since this plugin speaks standard SMTP rather than a provider-specific API. Grab your SMTP host\/port\/username\/password from each provider's own setup docs:\n* <a href=\"https:\/\/docs.sendgrid.com\/for-developers\/sending-email\/getting-started-smtp\">SendGrid SMTP setup<\/a>\n* <a href=\"https:\/\/documentation.mailgun.com\/docs\/mailgun\/user-manual\/sending-messages\/\">Mailgun SMTP setup<\/a>\n* <a href=\"https:\/\/docs.aws.amazon.com\/ses\/latest\/dg\/send-email-smtp.html\">Amazon SES SMTP setup<\/a>\n* <a href=\"https:\/\/help.brevo.com\/hc\/en-us\/articles\/209462765\">Brevo SMTP relay<\/a>\n* <a href=\"https:\/\/www.zoho.com\/mail\/help\/\">Zoho Mail help center<\/a><\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20woocommerce%3F\"><h3>Does this work with WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. WooCommerce order emails, and any other plugin that sends email through <code>wp_mail()<\/code>, automatically use the SMTP settings configured here \u2014 no separate configuration needed on the WooCommerce side.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20contact%20form%207%2C%20wpforms%2C%20gravity%20forms%2C%20or%20elementor%20forms%3F\"><h3>Does this work with Contact Form 7, WPForms, Gravity Forms, or Elementor Forms?<\/h3><\/dt>\n<dd><p>Yes. Any plugin that uses the standard WordPress <code>wp_mail()<\/code> function routes through your configured SMTP settings automatically.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20for%20bulk%20email%20marketing%20or%20newsletters%3F\"><h3>Can I use this for bulk email marketing or newsletters?<\/h3><\/dt>\n<dd><p>No. This plugin is built for transactional email \u2014 order confirmations, password resets, contact form notifications, account emails. For bulk marketing sends, use a dedicated service such as Mailchimp, Klaviyo, or Brevo's marketing product.<\/p><\/dd>\n<dt id=\"can%20i%20switch%20from%20another%20smtp%20plugin%20to%20this%20one%3F\"><h3>Can I switch from another SMTP plugin to this one?<\/h3><\/dt>\n<dd><p>Yes, and there's nothing destructive about it. Deactivate your current SMTP plugin (or leave it active and just enable this plugin's \"Enable SMTP\" toggle \u2014 whichever hooks <code>phpmailer_init<\/code> last wins), enter your SMTP credentials here, and send a test email to confirm. Nothing about switching SMTP plugins affects your site's actual email content or past history.<\/p><\/dd>\n<dt id=\"how%20does%20the%20free%20real-time%20alerting%20work%3F\"><h3>How does the free real-time alerting work?<\/h3><\/dt>\n<dd><p>Enable monitoring in the Alerts tab and pick a channel \u2014 Slack, Microsoft Teams, Google Chat, Discord, or a Custom Webhook. WordPress Cron then opens a real connection to your SMTP server at the interval you set (EHLO, STARTTLS, and AUTH are all tested, not just a TCP port check) with no email actually sent on a successful check. If it fails for as many consecutive checks as your configured threshold, an alert goes out immediately.<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20up%20slack%20alerts%3F\"><h3>How do I set up Slack alerts?<\/h3><\/dt>\n<dd><p>In the Alerts tab, enable the Alert Channel toggle, select Slack, paste your Incoming Webhook URL, and save. Create the webhook at <a href=\"https:\/\/api.slack.com\/messaging\/webhooks\">api.slack.com\/messaging\/webhooks<\/a>.<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20up%20microsoft%20teams%20alerts%3F\"><h3>How do I set up Microsoft Teams alerts?<\/h3><\/dt>\n<dd><p>In the Alerts tab, enable the Alert Channel toggle, select Microsoft Teams, paste your Incoming Webhook URL, and save. Follow Microsoft's <a href=\"https:\/\/learn.microsoft.com\/en-us\/microsoftteams\/platform\/webhooks-and-connectors\/how-to\/add-incoming-webhook\">official guide to adding an Incoming Webhook to a Teams channel<\/a> to create the URL.<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20up%20google%20chat%20alerts%3F\"><h3>How do I set up Google Chat alerts?<\/h3><\/dt>\n<dd><p>In the Alerts tab, enable the Alert Channel toggle, select Google Chat, paste your Incoming Webhook URL, and save. Follow Google's <a href=\"https:\/\/developers.google.com\/workspace\/chat\/quickstart\/webhooks\">official Chat webhooks quickstart<\/a> to create the URL from your Chat space's Apps &amp; Integrations menu.<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20up%20discord%20alerts%3F\"><h3>How do I set up Discord alerts?<\/h3><\/dt>\n<dd><p>In the Alerts tab, enable the Alert Channel toggle, select Discord, paste your Incoming Webhook URL, and save. Follow Discord's <a href=\"https:\/\/support.discord.com\/hc\/en-us\/articles\/228383668-Intro-to-Webhooks\">official \"Intro to Webhooks\" guide<\/a> to create the URL from your channel's Server Settings \u2192 Integrations \u2192 Webhooks.<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20up%20a%20custom%20webhook%20for%20zapier%2C%20make%2C%20or%20n8n%3F\"><h3>How do I set up a custom webhook for Zapier, Make, or n8n?<\/h3><\/dt>\n<dd><p>In the Alerts tab, enable the Alert Channel toggle, select Custom Webhook, and paste the URL of your endpoint. Unlike the chat-app channels, this sends a structured JSON payload \u2014 <code>event<\/code>, <code>site_name<\/code>, <code>error_msg<\/code>, <code>consecutive_failures<\/code>, and more \u2014 built for automation tools to parse rather than for a human to read directly. Docs for the most common automation tools:\n* <a href=\"https:\/\/zapier.com\/page\/webhooks\/\">Webhooks by Zapier<\/a> \u2014 trigger a Zap from this plugin's alert payload\n* <a href=\"https:\/\/www.make.com\/en\/help\/tools\/webhooks\">Make (Integromat) webhooks<\/a> \u2014 use a \"Custom webhook\" trigger module\n* <a href=\"https:\/\/docs.n8n.io\/integrations\/builtin\/core-nodes\/n8n-nodes-base.webhook\/\">n8n Webhook node<\/a> \u2014 for self-hosted automation<\/p><\/dd>\n<dt id=\"does%20this%20support%20multisite%20networks%3F\"><h3>Does this support multisite networks?<\/h3><\/dt>\n<dd><p>The plugin activates and works on individual sites within a multisite network, but there's currently no centralized network-wide settings screen \u2014 each site is configured independently.<\/p><\/dd>\n<dt id=\"how%20does%20log%20pruning%20work%3F\"><h3>How does log pruning work?<\/h3><\/dt>\n<dd><p>Log entries are pruned automatically once per day via WordPress Cron. Choose to keep either the last 30 days or the last 1,000 records \u2014 older entries beyond your choice are removed automatically so the table doesn't grow unbounded.<\/p><\/dd>\n<dt id=\"is%20my%20smtp%20password%20stored%20securely%3F\"><h3>Is my SMTP password stored securely?<\/h3><\/dt>\n<dd><p>Yes. The password is encrypted at rest using a key derived from your WordPress installation's own salts before it's saved, not stored as plaintext.<\/p><\/dd>\n<dt id=\"where%20are%20my%20smtp%20credentials%20stored%2C%20and%20are%20they%20sent%20anywhere%3F\"><h3>Where are my SMTP credentials stored, and are they sent anywhere?<\/h3><\/dt>\n<dd><p>Credentials are stored in the WordPress options table (<code>wp_options<\/code>) on your own server using the standard <code>update_option()<\/code> API. They are never transmitted to ByteCore Stack or any third party \u2014 the only network connection your credentials are used for is the SMTP server you configured them for.<\/p><\/dd>\n<dt id=\"what%20external%20services%20does%20this%20plugin%20use%3F\"><h3>What external services does this plugin use?<\/h3><\/dt>\n<dd><p>See the \"External Services\" section below for a full breakdown \u2014 your SMTP server, and optionally whichever alert channel(s) you choose to enable.<\/p><\/dd>\n<dt id=\"i%20found%20a%20bug%20or%20have%20a%20feature%20request%20%E2%80%94%20where%20do%20i%20report%20it%3F\"><h3>I found a bug or have a feature request \u2014 where do I report it?<\/h3><\/dt>\n<dd><p>Use the Support forum on this plugin's WordPress.org page, or reach out via <a href=\"https:\/\/bytecorestack.com\/\">bytecorestack.com<\/a>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.0<\/h4>\n\n<p><strong>Renamed<\/strong> from \"SMTP Manager by ByteCore Stack\" to \"SMTP Manager \u2013 Email Logs, Monitoring &amp; Alerts\" \u2014 display name only, the plugin slug and all your settings are unchanged.<\/p>\n\n<p><strong>New alert channels<\/strong> \u2014 Google Chat and Discord join Slack and Microsoft Teams, plus a Custom Webhook channel for Zapier\/Make\/n8n\/your own endpoint. The Custom Webhook channel POSTs a structured JSON payload (<code>event<\/code>, <code>site_name<\/code>, <code>error_msg<\/code>, <code>consecutive_failures<\/code>, etc.) instead of a formatted chat message. All webhook URLs are validated against the provider's real domain and sent via <code>wp_safe_remote_post()<\/code>.<\/p>\n\n<p><strong>New WordPress Dashboard widget<\/strong> \u2014 SMTP health status and a 30-day sent\/failed\/unconfirmed volume summary, visible without opening the plugin's settings page.<\/p>\n\n<p><strong>Admin UI redesign<\/strong> \u2014 full-width layout, boxed\/gradient header, cards split into header\/body sections, icon tiles on stat boxes, a \"Common SMTP Providers\" quick-reference card, full mobile\/tablet responsive pass (dropdowns, pagination, button widths, tab bar scrolling), a show\/hide eye icon on the password field, and AJAX-driven Email Log filtering with a skeleton loading state.<\/p>\n\n<p><strong>Security<\/strong>\n* The SMTP password is now encrypted at rest instead of stored in plaintext (existing installs migrate automatically on next save).\n* All alert webhook URLs are validated against the provider's real domain and sent via <code>wp_safe_remote_post()<\/code>, closing an SSRF vector where a malicious\/misconfigured webhook URL could make the server POST to internal addresses.\n* Stopped storing full email message bodies and headers in the Email Log table \u2014 only delivery metadata is retained, matching what the UI has always claimed.\n* Added a 30-second rate limit to \"Run Health Check Now\" to match the other test\/send actions.<\/p>\n\n<p><strong>Reliability<\/strong>\n* Fixed a bug where the automated SMTP health check could report \"healthy\" after a bare EHLO even when the server's STARTTLS upgrade failed, TLS was selected but STARTTLS wasn't offered, or SMTP auth was never actually verified over an unencrypted connection.\n* Scheduled\/manual delivery reports now report exactly which recipients succeeded and which failed, instead of one pass\/fail flag for the whole batch.<\/p>\n\n<p><strong>Performance<\/strong>: composite database index on (status, sent_at) for the common Email Log filter combination; CSV export capped at 50,000 rows.<\/p>\n\n<p><strong>Compatibility<\/strong>: bumped minimum WordPress version to 5.3 (<code>wp_timezone_string()<\/code>\/<code>wp_date()<\/code> require it \u2014 the plugin previously declared 5.0 but used functions that didn't exist yet).<\/p>\n\n<p><strong>Accessibility &amp; i18n<\/strong>: AJAX status messages use <code>role=\"status\" aria-live=\"polite\"<\/code>; nearly every user-facing string is now wrapped for translation (previously ~2 out of hundreds, despite declaring a text domain).<\/p>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"The WordPress SMTP plugin for reliable email delivery \u2014 full email log, health monitoring, and instant Slack, Teams, Discord &amp; Google Chat alerts.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/318279","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=318279"}],"author":[{"embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bytecorestack"}],"wp:attachment":[{"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=318279"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=318279"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=318279"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=318279"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=318279"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/hu.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=318279"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}