With Google getting picky about HTTPS on sites, I was hoping to be able to do a quick and easy SQL Query to search & replace anything http://
with https://
I normally do something like the below for moving hosts:
UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl');
So I tried to do something like
UPDATE `wp_commentmeta` SET 'meta_value' = REPLACE(`meta_value`, 'http://', 'https://');
But it didn't seem to work. Anyway to do the ENTIRE database at once?
If there is mySQL or htaccess script, I am more interested in those solutions.
If you have access to edit your .htaccess
file, you can add the following into it:
RewriteEngine on
# force SSL
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
The code above will redirect with 301 (permanent), if don't want to use a 301 redirect, you can simply change the last section on the last line from [L,R=301]
to [L,R]
.
If you want to be a little more thorough with your SQL replacement, you can usually find all the necessary links inside the posts
table inside the guid
column (featured images) and the post_content
column (backlinks etc). And then ofcourse also inside the post_meta
table - meta_value
column and home
/siteurl
inside your options
table. Here is the SQL Query that I normally use:
UPDATE wp_options SET option_value = replace(option_value, 'http://example.com', 'https://example.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE (guid, 'http://example.com', 'https://example.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://example.com', 'https://example.com');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://example.com','https://example.com');
You can either try WP CLI or the Search Replace DB from Interconnect/it.
If you use the later, you can delete folder after replacing the URL.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With