I won a bid on Elance and was had a request to fix some css and html issues with a WordPress site.

How do I make changes to the document without working on the live site? Do you set up a development environment for every job you get? This would be time consuming on a job that pays very little. I was offered access to the wp-admin and the cpanel but any changes would affect the live site immediately.

What is the best practice for changing and updating sites for clients?

Any advice on how to develop on a site that you do not have the full install on is helpful.

| improve this question | | | | |
  • sometimes you can create a working copy of the template. Then switch to that template based on for example your IP address. BUT at first: download a full back-up or create some tar.gz file of it and keep it in at least 2 places. – Luc Franken Jan 10 '14 at 14:29
  • if it's hard for you to setup a development enviroment for a wp-site you're doing something wrong. It's a 5-10 min job (and that includes version control)... – iveqy Jan 10 '14 at 14:41
  • @iveqy that assumes the site he'll be working on is already neatly set up on github, has the required scripts to build any custom tables, requires no special libraries installed in linux, and everything is nicely documented so he knows whats needed to duplicate the environment. Pretty unlikely. – GrandmasterB Jan 10 '14 at 16:40
  • @GrandmasterB No it doesnt. I didn't even mentioned github(!). Would you say that mysqldump doesn't export everything? It is really uncommon for a website to have code outside its webroot (especially for wordpress sites). Dependencies for a website is usually either in webroot or common enough to be available in your package manager. Otherwise you've a really hard time finding hosting – iveqy Jan 10 '14 at 21:05

Depends on the scope

If the changes are simple enough you could just test them live using chrome developer tools or firefox firebug plugin and then apply the changes in wp-admin when you are confident enough.

You could retrieve the static source, test and make changes offline and then apply in wp-admin.

Also wp-admin offers mechanisms for previewing most changes before making them live.

Depends on the customer

This increases the risk of issues occurring in production. You should have a conversation with the customer about this and gauge their acceptance of this risk.

When should I have a dedicated development environment?

Most of the time you want a development environment that closely matches the specifications and infrastructure found in the live environment. Whenever possible you should strive for this.

Virtualization technologies and cloud services have made setup and management of multiple environments so easy now. If you do many wordpress contracts you will want to explore ways of quick setup and teardown.

| improve this answer | | | | |

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