How do you make large site wide modifications to your live site without bringing it down?

I don't have a team of web designers and will be doing this solo. But still need to keep the site up and running.

I'm implementing some changes to the current responsive web design. Some changes will cascade across the site and I'm not entirely sure where all of them might occur. Whole sections of the site might be deformed but I won't immediately know. I don't want to get into a situation where there are too many broken areas and I can't keep up.

I don't have git or a cloud server. I use FTP to move anything or edit the theme through the WP admin area.

How do other solos handle this type of situation?

  • This is a very interesting question but it has nothing to do with wordpress. Whatever the answers will be they will be about general software design and testing techniques. so unless you can improve it to be wordress specific it is off topic here Oct 31 '13 at 4:53
  • Has everything to do with Wordpress since modifying a live Wordpress site is not the same as a static site or one running on Drupal or whatever.
    – 4thSpace
    Oct 31 '13 at 5:24
  • why not? how is it different? Oct 31 '13 at 5:33

I STRONGLY suggest you take your time and set up a development server with versioning like GIT. It is awesome. But since i am in exactly the same position as you and have not yet done it myself, I will share how I do things. If I have changes to implement that will possibly bring down the site or do some whacky stuff that is not immediately apparent, I:

  1. Choose the time of day where the traffic is at it's lowest. Yes, usually it is between 2 and 5 in the morning. I am an owl.
  2. Make a specific plan of what I am going to do, where, why and how, and what I need to test to make sure it works as intended. This is to ensure that I don't get carried away fixing something else instead of what I wanted to fix and that stuff does not slip through the cracks. I also prepare my environment - make sure that all browsers / devices I am going to check the changes on are charged, installed and otherwise ready.
  3. Put an alert in page header that says 'we are currently doing stuff here, excuse inconvenience'.
  4. If the changes are huuuge, site is expected to not work for more than an hour at all and I can afford it, I enable maintenance mode with plugin. http://wordpress.org/plugins/wp-maintenance-mode/.
  5. All in all, communication is essential. Talk to your client, talk to your users, get everyone informed about what you are doing, why, how long it will take etc. Most people are able to take a bit of inconvenience if they expect it and understand why it happens.

Hope this helps.

  • I think it is probably the best way with Wordpress. I don't see how GIT/SVN will help. If you change a theme, it will touch multiple files. If you don't have all of those checked out, you might ruin your WP install with 1/2 changes. It will take a while to untangle that mess.
    – 4thSpace
    Oct 31 '13 at 13:38

Developing locally first - using WAMP / MAMP or similar software - is a smart way to go... Usually, I'm able to make changes to a local copy of the site, and then push the changes using git to the live site once I've fixed all of the issues that may present themselves over a day or two...

Also, if you have a cloud server snapshot of the existing site that you can modify and push changes to before you push to the production site, that's even better.

  • I don't have either of those and have updated the question. Trying to maintain a site locally is a huge time drain and isn't an option for me.
    – 4thSpace
    Oct 31 '13 at 4:43

By your description the code of the site needs to be refactored in a way that will enable you to make localized changes with localized impacts. use small css and js only whenever they are needed and get as much functionality as possible out of the theme and into plugins. The advantage of plugins is that unlike a file it is a complete logical module you can replace.

All this and the use of SVN/GIT is a must for being able to easily maintain a site for a long duration. For small sites you can get without all of that but bigger sites require it.

  • How do you use git/svn with Wordpress? Why would you use design elements of your theme into plugins? Do you have examples of any plugins that do that?
    – 4thSpace
    Oct 31 '13 at 5:22
  • if you can't install on the server, and run wordpress on it, then you just keep your changes locally with your favorite version control tool. if you have a big code base you should break it into smaller modules to be able to maintain it better and hopefully be able to test each module by itself. plugins are just a natural way in wordpress to create modules. Oct 31 '13 at 5:39
  • please keep in mind that this is a Q&A site and not a forum. answers supposed to be definitive to the question being asked and not a starting point to a discussion. what you have asked here should be asked in their own question, although I am sure that running wordpress on SVN/GIT is very well documented by now in several place on the internet. Oct 31 '13 at 5:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.