I'm setting up a new CiviCRM and web site on WordPress. I'm used to working on dev/staging sites and pushing changes to production after they are tested and approved. What's the best way to do this with CiviCRM on WordPress? Here's what I would do without any advice:
Setup
- Install WordPress and CiviCRM fresh on the production site.
- Make a complete copy of the filesystem and database to create a staging site
- Globally replace domain names in WP and CiviCRM files and DB tables, using guidance from the docs and this answer.
Deployment
At this point, should staff use CiviCRM in production, or on staging? I think WordPress changes should be made on staging, and pushed to production. Maybe CiviCRM changes should be made in production and synced to staging? Should everything be done on staging, and then deployed by reversing the Setup steps?