I recently got bit by this scenario.  Using a theme, had it working under HTTP, and when I went to switch HTTPS on I was disappointed to see the pages broken. Sadface…

I tried the usual steps. The first thing I did was to look at the wp_options in the database and change thechange the SITE_URL and HOMEPAGE options. I found that my wp-config.php had HTTP hardcoded like this:



So I commented out those 2 lines. Still no luck. Well at this point I started getting frustrated, which usually means I start digging through source code. This time was not an exception. In my functions.php I found that all the wp-content links were using get_template_directory_uri():

define( ‘NEWFASHION_WPO_THEME_URI’, get_template_directory_uri() );

…used, for example, like…


Ah ha! I thought excitedly. It must be the get_template_directory_uri function, which in fact checks the server variable to see if HTTPS is set to on.

The end solution, since I’m using a load balancer that is setting these other headers, was to copy the solution from the article linked above into my wp-config.php file.


    $_SERVER[‘HTTPS’] = ‘on’;