Fixing WordPress Email Issues After WP 6.9 on SiteGround

If you've recently updated to WordPress 6.9 and suddenly found that your contact forms, password resets, and notification emails have stopped working on SiteGround hosting, you're not alone. I recently encountered this frustrating issue and wanted to share the solutions that got my emails flowing again. The Problem: wp_mail() Stopped Working After upgrading to WordPress […]

If you've recently updated to WordPress 6.9 and suddenly found that your contact forms, password resets, and notification emails have stopped working on SiteGround hosting, you're not alone. I recently encountered this frustrating issue and wanted to share the solutions that got my emails flowing again.

The Problem: wp_mail() Stopped Working

After upgrading to WordPress 6.9, many SiteGround users noticed that the wp_mail() function wasn't delivering emails properly. Contact forms would appear to submit successfully, but emails never arrived. Password reset links vanished into the void. It was a silent failure that could seriously impact your website's functionality.

The root cause appears to be related to changes in how WordPress 6.9 handles email authentication and sender verification, combined with SiteGround's email infrastructure updates. When these two don't play nicely together, your emails get rejected or lost.

Solution 1: Set Up Fluent SMTP with SiteGround Email (Recommended)

This is my preferred solution because it's reliable, professional, and gives you proper SMTP authentication.

Step 1: Create an Email Account in SiteGround

  1. Log into your SiteGround account
  2. Navigate to Site Tools > Email > Accounts
  3. Click Create New Email Account
  4. Create an email like [email protected] or [email protected]
  5. Set a strong password and save the credentials somewhere secure

Step 2: Install and Configure Fluent SMTP

  1. Install the FluentSMTP plugin from your WordPress dashboard (Plugins > Add New)
  2. Activate the plugin
  3. Go to FluentSMTP > Settings
  4. Choose "Other SMTP" as your provider
  5. Enter your SiteGround SMTP details:
    • SMTP Host: Your SiteGround server (e.g., guk1020.siteground.eu)
      • Find this in SiteGround Site Tools > Email > Accounts - it's shown in your email account details
    • SMTP Port: 587
    • Encryption: TLS
    • SMTP Username: The full email address you created (e.g., [email protected])
    • SMTP Password: The password you set
    • From Email: The same email address
    • From Name: Your site name or preferred sender name
  6. Click Save Settings
  7. Use the Email Test tab to send a test email and confirm everything works

This solution ensures your emails are properly authenticated and dramatically improves deliverability.

Solution 2: Quick Fix with wp_mail_from Filter

If you need a faster solution or want to ensure WordPress is using the correct sender email, you can add a simple filter to your site. This can work in conjunction with Solution 1 or sometimes on its own for simpler setups.

Using a Code Snippets Plugin (Easier Method)

  1. Install the Code Snippets plugin
  2. Go to Snippets > Add New
  3. Give it a name like "Fix WP Mail From Address"
  4. Add this code:
<?php

add_filter('wp_mail_from', function($from_email) {
  return '[email protected]';
});
  1. Make sure the email address matches your SiteGround email account
  2. Save and activate the snippet

Adding to functions.php (Alternative Method)

If you prefer to add code directly:

  1. Go to Appearance > Theme File Editor
  2. Select your functions.php file (preferably in a child theme)
  3. Add the same code at the bottom:
<?php
add_filter('wp_mail_from', function($from_email) {
  return '[email protected]';
});
  1. Update the file

Important: Replace [email protected] with the actual email address you want to send from. This should match an email account that exists in your SiteGround hosting.

Why This Matters

Using a proper "From" address that matches your domain and exists in your hosting account is crucial for email deliverability. Email servers are increasingly strict about sender authentication. If WordPress tries to send emails from [email protected], but that email doesn't actually exist, spam filters get suspicious and your emails disappear.

Which Solution Should You Use?

  • For most users: Go with Solution 1 (Fluent SMTP). It's more robust, gives you better deliverability, and provides useful features like email logging.
  • For quick fixes: Solution 2 can work in a pinch, especially if you're already using PHP mailer or if your hosting handles SMTP automatically.
  • For best results: Use both! Configure Fluent SMTP for proper SMTP authentication AND add the filter to ensure consistency.

Testing Your Fix

After implementing either solution, always test thoroughly:

  1. Use your contact forms
  2. Test password reset functionality
  3. Check WooCommerce order emails (if applicable)
  4. Verify user registration emails
  5. Use Fluent SMTP's built-in email test feature

Check your spam folder initially, just in case emails are being filtered incorrectly while DNS and reputation build up.

Final Thoughts

Email deliverability issues can be incredibly frustrating, especially when they appear suddenly after an update. The good news is that with proper SMTP configuration and the right sender address, WordPress and SiteGround can work together beautifully.

If you're still experiencing issues after trying these solutions, consider reaching out to SiteGround support. They can verify your email account settings and check for any server-side restrictions.

Have you encountered wp_mail issues on SiteGround or other hosts? What solutions worked for you? Share your experience in the comments below!

Recent posts:

How I Tripled Conversions on the Same Google Ads Budget

When I took over a Google Ads account in February, the previous agency had done what most agencies do: optimised for vanity metrics. More clicks. More impressions. More keywords. More "activity" to justify their monthly retainer. The client was spending the same amount every month and getting… about the same mediocre results every month. By […]
adding layer to php plugin

How to Wrap WordPress Plugin Stylesheets in CSS Cascade Layers

Learn how to wrap WordPress plugin stylesheets in CSS cascade layers for clean, maintainable style overrides without specificity hacks or !important.

How to Query Reordered Meta Box Posts in Bricks Builder (Complete Guide)

I have recently tried to query posts in bricks builder in the order that I have reordered them with meta box's drag and drop feature. In short you will have to order by menu_order and then choose ascending. The menu_order value is stored in your _posts table: Understanding Meta Box's Reordering System When you use […]

Start your project today

Get in touch
Contact Form
crosschevron-left