How to Manually Switch a WordPress Theme via FTP

If you’re staring at a broken WordPress theme and can’t even access your administration dashboard, don’t panic! This step by step tutorial will show you how to switch to another theme manually using FTP.

But first, let me break my theme:

Breaking WordPress – it’s Easy!

WordPress can be incredibly fragile at times. In the screenshot below for example, I just navigate to my theme’s functions.php file and add a <?php line at the bottom without closing the opening tag. Like this:



This leads to the infamous “white screen of death” as shown here:



This screen can be triggered in many, many ways. Parsing errors, duplicated functions from a plugin, and lots of other vague theme or plugin related reasons. Sometimes it’s possible to just run to the admin and change the theme. But many times, the admin itself is compromised. To manually switch a WordPress theme, FTP is a great tool to use.

Step 1: Get an (S)FTP Account for your WordPress Site

If you have the time, I suggest you set up SFTP from cPanel instead. However, if it’s an emergency you can go with FTP for now. After you’re done, I strongly suggest you follow the link above and use SFTP from there on out. With plain FTP, your password and data is sent in plain text over the open Internet. Not safe!

If you already have an FTP account, proceed to step 2. If not, open up your hosting control panel and navigate to the FTP icon:


Clicking this will allow you to create a new FTP account for your WordPress site. Fill out the form fields as shown here:




The important things to note are the “Directory” in which the FTP account will start. Make sure this path points to your main WordPress directory containing the folders “wp-includes”, “wp-content” etc etc. Fill out your username and passwords and click “Create FTP Account”. Once your account is created, it will be added to the list below. Next to your account in the list, click “Configure FTP Client” so you get the details to use:


Now that you have FTP access, you need a client to access your site. Personally, I like to use WinSCP. It’s free, and has a simple interface. After installation, fill out the FTP details you got from the first step as shown here:


In the “Host name” section, type in the name you got from “FTP Server” in the previous screenshot. And add your username and password as usual. If all goes well, it should connect and you have now accessed your site via FTP!

Step 2: Manually Switch the WordPress Theme

Now it’s time to change your WordPress theme. If your FTP client has opened in your WordPress folder, navigate to the following location:


This will show you a list of all themes currently installed on WordPress – each has its own folder. Right click the name of the theme that’s breaking WordPress and rename it to something else as shown here:


Once done, simply visit your WordPress dashboard. It should be working. Navigate to “Appearance”, and WordPress will show you a message saying that it’s reverting to the default theme because the active one is broken:




In this case, the “default theme” is likely TwentySixteen, or one of the others that came pre-installed with WordPress. Now your site will work again, but with another theme. In the meanwhile, you can try and fix what went wrong in the first place without the added pressure of a broken site.

In case you’re wondering what happens if we rename the default theme, WordPress will then simply shift to the next “default” theme. And when it runs out of those, it displays an error message saying: “The theme directory “xxx” does not exist”.


This is just to satisfy your curiosity about what happens when all the valid themes in the WordPress theme folder are renamed!

In the future, if you want to quickly switch WordPress themes manually, you can make use of this code snippet I developed, so that you can recover from a broken theme or plugin instantly. It’s always good to be prepared right?

If you don’t want to deal with all these error messages yourself, consider getting specialized WordPress hosting instead of general web hosting. This way, the hosting provider will take care of fixing your errors and getting your site back up and running. In the long run, it can save you some headache. Here’s a pricing comparison of WordPress hosting from the major vendors.

About Bhagwad Park

I've been writing about web hosting and WordPress tutorials since 2008. I also create tutorials on Linux server administration, and have a ton of experience with web hosting products. Contact me via e-mail!


  1. Thanks mahn it worked:)


  2. Thanks, you’ve saved me


  3. Thanks a lot, that was brilliant 😉


  4. Saviour, if only I’d seen this first without waiting two days for assistance from the theme developers!


  5. It didn’t work for me, I just get a white screen instead..


    • LJ wrote: “IT didn’t work for me, I just get a white screen instead”

      Have you tried adding /wp-login.php at the end of the domain address — — in order to get to the login page?

      That worked for me.


  6. This was EXACTLY what I was hoping to find to fix something that I had 99% ready .. I’ll just make one more tweak to that function … oh .. damn .. backup ! – oh backup was from 6 hours ago – cached copy in the browser ! . .. still broken .. ummm .. there must be a way to fix this … Google !!! –

    I will name my next child after you .. or buy you a beer, or something …


  7. Thanks a lot it worked for me, it was brilliant


  8. Worked a dream, so easy! Thank you!


  9. Unfortunately it didn’t work for me. I’m guessing when I updated Themify’s Peak theme it really screwed my site over. I’ve renamed the Peak theme via FTP, I added the code snippet to make WordPress use the 2016 theme, but the dreaded white screen is still there. I can’t get into the back end either by /wp-admin or /wp-login.php


  10. thank you so much this is exactly what i needed!!!!


  11. un-fucking-believable. that worked!
    thanks a lot!


  12. You are a savior, thanks!!
    It was very easy and it worked!


  13. I’m actually looking for an answer for a different issue, but perhaps you could help me: I switched from an older theme to one of the WordPress themes. I didn’t like it and tried to switch back and it wouldn’t let me. Instead I got an error message similar to what you have here. How can I get that theme back? There were no changes made between me switching the themes. It just wouldn’t go back.


  14. Listen asshole. This isn’t about activating via ftp, but installing via ftp. You’re still activating via dashboard. What bullshit.


  15. Absolutely brill, thanks!


  16. Thanks a million, all fixed!


  17. Thank you! I broke my theme and was panicking. This worked like a champ.


  18. I never write any comment nearly my whole life. But I save a completley Website in less than 5 minutes….. Great Tutorial. Thank you


Speak Your Mind