Search Over 30,000 FREE Plugins from the Official WordPress Plugin Directory Repository

Remove HTTP: Fix Mixed Content Warning

Fixes all mixed content warnings. Removes both HTTP and HTTPS protocols from all links from the front-end and back-end.

Remove HTTP is a plugin that automatically scans and removes both http: and https: protocols from all links. This helps resolve websites that are having "mixed content warnings" which is when the website has assets (images, JavaScript, and CSS) loading both HTTP and HTTPS.

No changes to the links are made in the database. Simply install and activate the plugin and the changes will be immediate. Links that have http:// or https:// will only have //, making them protocol relative URLs. Below is a before and after example.


<link rel='stylesheet' id='some-id'  href='' type='text/css' media='all' />
<script type='text/javascript' src=''></script>
<a href="" title="Some Title" rel="home">Some Link</a>
<img src="" alt="Some Alt" width="150" height="50" />


<link rel='stylesheet' id='some-id'  href='//' type='text/css' media='all' />
<script type='text/javascript' src='//'></script>
<a href="//" title="Some Title" rel="home">Some Link</a>
<img src="//" alt="Some Alt" width="150" height="50" />

Apply to internal links only

Additionally, there is an option (under the General settings) to apply changes to internal links only.

Contribute on GitHub

Want to help improve this plugin? Head over to our GitHub page.

Author Fact Maven
Contributors factmaven, ethanosullivan
Tags cloudflare, http, https, insecure content, mixed content, mixed content warning, partially encrypted, protocol relative url, protocol rewriting, relative protocol, remove http, remove https, rewrite, ssl, url
  1. Upload the plugin to the /wp-content/plugins/ directory.
  2. Activate the plugin through the Plugins menu in WordPress.
  3. Let it settle in for a minute and be amazed.



  • Minor code improvements



  • Feature: Option to remove protocols from internal links only (see General > Protocol Relative URL)
  • Added uninstall to delete custom plugin options
  • Improved regex to find all protocols
  • Simplified and removed redundant code



  • Function will run once WordPress, all plugins, and the theme are fully loaded
  • Reverted back to original regex from v1.0.0
  • Upgrade notice shown when update is available
  • Fix: Conflict with Visual Composer plugin
  • Fix: YouTube videos in Revolution Slider plugin stopped playing



  • Improved regex to find all protocols
  • Comments added for code explanation



  • Initial release, huzzah!

What is mixed content?

According to Google:

Mixed content occurs when initial HTML is loaded over a secure HTTPS connection, but other resources (such as images, videos, stylesheets, scripts) are loaded over an insecure HTTP connection. This is called mixed content because both HTTP and HTTPS content are being loaded to display the same page, and the initial request was secure over HTTPS. Modern browsers display warnings about this type of content to indicate to the user that this page contains insecure resources.

In short, mixed content degrades the security and user experience of your HTTPS site.

What does the option "*only apply to internal links*" do exactly?

Changes will only apply to internal links. For example, if your domain was, it will look like the following:

<link rel="profile" href="">
<script type='text/javascript' src='//'></script>
<a href="" title="Fact Maven" rel="home">Fact Maven</a>
<img src="//" alt="Some Alt" width="150" height="50" />
Version 1.1.1

Requires WordPress version: 3.0.0 or higher

Compatible up to: 4.7.2

Last Updated 17 Jan 2017

Date Added: 05 Sep 2016

Plugin Homepage


4.2 stars
10 ratings


Not Enough Data

Works: 0
Broken: 0