SSL Troubleshooting
Still Seeing a Mixed Content Warning After Installing SSL? Here's the Fix
A padlock with a warning triangle means part of the page is still loading over plain HTTP. Track down every insecure asset and force the whole site onto HTTPS.
Free
Auto-renewing SSL on every plan
NVMe
Pure NVMe storage and LiteSpeed
24/7
Human support for SSL issues
30-Day
Money-back guarantee
In short
A mixed content warning shows up when a page loads over HTTPS but calls in an image, script, or stylesheet from an http:// address, so the browser will not mark the connection as fully secure. Fix it by setting the WordPress and site URLs to https://, running a database search-and-replace to swap stored http:// links for https://, and correcting any hardcoded http references left in theme files, widgets, or page builder content.
You installed an SSL certificate, the site loads at https://, and the padlock still shows a warning icon instead of a clean lock. Click it and the browser lists the culprit: 'This page includes other resources which are not secure.' It's one of the most common support tickets right after a domain moves from http to https, and it rarely means the certificate itself is broken.
WordPress stores full URLs, not just file paths, inside post content, widget settings, theme options, and the wp_options table. When a site is only switched to SSL at the server level, every one of those saved http:// references stays exactly as it was, and the browser flags each one it finds. Clearing the warning means finding and updating those references at the database level, not just reissuing the certificate.
Why the Padlock Still Shows a Warning After Adding SSL
Browsers grade a page as fully secure only if every single resource on it, down to the smallest tracking pixel or embedded font, loads over HTTPS. If even one script tag or background-image reference still points to http://, Chrome and Firefox downgrade the padlock and show a warning rather than treating the certificate as pointless.
This is separate from whether the SSL certificate itself is valid. A brand-new, correctly issued certificate with free auto-renewal will still trigger the warning if old content on the page references insecure URLs, which is why simply reinstalling or renewing the certificate never resolves this on its own.
Finding Every Source of Insecure Content
Open the padlock icon in the browser address bar and view the security details, which usually list the exact insecure URLs being blocked or loaded. Then check the page's HTML source (Ctrl+U) and search for http:// to spot leftover references in image tags, embedded video players, or inline scripts added by a theme or plugin.
Common offenders include images uploaded before the SSL switch, font or analytics snippets pasted with a hardcoded http:// prefix, favicon and logo URLs set in theme customizer fields, and old video or social embeds saved with their original http link.
Running a Safe Database Search-and-Replace
Because WordPress serializes some data, such as widget settings and theme options, as PHP arrays with string-length prefixes, a plain find-and-replace in phpMyAdmin can corrupt those rows. Use a serialization-safe search-and-replace tool, or a plugin built for the job, and always take a full database backup before running it.
Run the replace searching for http://yourdomain.com and replacing with https://yourdomain.com across all tables, then check the homepage, a blog post with images, and any page built with a page builder to confirm nothing broke. Daily backups mean a bad replace is never more than a restore away from being undone.
Cleaning Up Hardcoded Links in Themes and Widgets
A database replace won't catch links typed directly into a theme's PHP files, a custom HTML widget, or a header script inserted through a plugin. Search theme files for 'http://' in a code editor, and check any custom CSS, header or footer scripts, and menu items built with manually entered URLs.
Once the database and hardcoded references are both clean, add a redirect from http to https at the server level and confirm the site loads over HTTPS by default. A one-click installer environment with a properly configured control panel makes it straightforward to check redirect rules without digging through raw config files.

SSL That's Set Up Correctly From Day One
Most mixed content problems trace back to a certificate that was added after the site was built, leaving years of saved http:// links behind. Hosting with SSL issued and configured automatically at signup, before content is created, avoids that whole class of cleanup later.
Free auto-renewing SSL means there's no certificate expiry to track and no manual reinstallation step that could reset URL settings, so the padlock stays clean without repeat maintenance.
- Free SSL certificates that renew automatically, no manual reissue
- cPanel-style panel with a one-click WordPress installer preconfigured for HTTPS
- Free managed migration that carries HTTPS settings over correctly
- 24/7 human support if a search-and-replace needs a second pair of eyes
Why Hosting Cheap
What you get
Free Auto-Renewing SSL
Every plan includes an SSL certificate that renews on its own, removing one common cause of insecure-content warnings after expiry.
Daily Backups
A full backup before any database search-and-replace means mistakes are recoverable in minutes, not a rebuild from scratch.
Free Managed Migration
Moving a site over is handled for you, including checking that URLs and links carry over as https:// correctly.
NVMe SSD and LiteSpeed
Pages still load fast while the site is being checked and re-checked for leftover http:// references.
24/7 Human Support
Real people are available to help trace a stubborn mixed content warning down to the exact script or image causing it.
30-Day Money-Back Guarantee
Try the hosting environment risk-free while sorting out SSL and URL settings on a new or migrated site.
How It Works
Get set up in a few steps
Locate the insecure resource
Use the browser's padlock details and page source to find the exact http:// image, script, or link triggering the warning.
Search-and-replace the database
Back up the database, then use a serialization-safe tool to swap stored http:// URLs for https:// across all tables.
Fix hardcoded links and force HTTPS
Update any http:// references typed directly into theme files or widgets, then set a site-wide redirect to https://.
Included
Everything you need, on every plan
- Confirm the SSL certificate is active and not expired
- View page source and search for http:// references
- Check images, embeds, and fonts added before the SSL switch
- Back up the database before any search-and-replace
- Use a serialization-safe search-and-replace tool, not plain SQL
- Update hardcoded links in theme files and custom HTML widgets
- Set a permanent redirect from http to https site-wide
- Recheck the padlock on the homepage and a page with images
FAQ
Frequently asked questions
What exactly causes a mixed content warning?
It happens when an HTTPS page loads at least one resource, such as an image, script, or stylesheet, from a plain http:// address instead of https://. The browser considers the overall connection only partially secure and shows a warning instead of a full padlock.
Will renewing my SSL certificate fix a mixed content warning?
No. The certificate secures the connection itself; the warning is caused by content saved with old http:// links. Renewing or reissuing the certificate does not change any of that stored content, so the warning stays until the links are updated.
Is it safe to fix this with a plain find-and-replace in phpMyAdmin?
Not directly. WordPress serializes some settings with string-length counts, and a plain text replace can break those rows if the new text is a different length. Use a serialization-aware search-and-replace tool and back up the database first.
Why do images still show as insecure after I updated my posts?
Older image URLs are often stored in multiple places, including post content, image metadata, and cached page builder data, so a single edit in the visual editor may miss copies saved elsewhere in the database.
Do I need a plugin to fix mixed content warnings?
A plugin isn't required, but a dedicated search-and-replace tool makes the database step much safer than editing tables by hand, especially on a site with years of accumulated content.
How can I stop this from happening again?
Set up SSL and force HTTPS before adding content to a new site, always enter new links as https://, and take a backup before any bulk content change so a future fix is a quick restore rather than a rebuild.
Related hosting
SSL Certificates
See how free, auto-renewing SSL is issued and configured on every hosting plan.
WordPress Hosting
Hosting built for WordPress with one-click installs and free migration that preserves HTTPS settings.
Web Hosting
General-purpose hosting with NVMe storage and free SSL for sites of any kind.
Move to HTTPS Without the Cleanup Headache
Get free auto-renewing SSL and a managed migration that keeps your links pointed the right way from the start.
Get Started