Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

Currently i use a dump script and commit the database to the git repo. --skip-extended-insert --skip-comments --skip-dump-date means that a diff can give me a fair idea of what has changed, but it all falls down if I try to merge.

The WP_SITEURL, WP_HOME and all the other places wordpress stores full URLs need updating when importing to another host (testing,staging,production)

Is anyone using a better method?

Main issues:

  • Wordpress stores full URLs all through the database (non-portable)
  • Lots of other, non-relevant records change
    • auto_increment values (i just strip these out, but have run into ID issues)
    • timestamps (can also strip out, potentially)
    • transient* records ... no idea what to do with them

A process that created timestamped migrations, with only the things added or removed, would be ideal... but i'm not sure if it's even possible?

share|improve this question
Do you want to version all data changes or only changes in structure? and that is your real BUSINESS-TASK? –  Lazy Badger Feb 14 at 6:31
When making changes to CMS's like wordpress, there are often content and configuration (DB data) changes along with logic (code) changes. I would like to be able to version both. Structure changes would be a good start ... BUSINESS TASK: client asks for new widget. Install plugin on staging server, commit to repo -> Configure plugin and add sample content -> once approved, pull code changes to production, then manually make same data changes in production admin. –  Jacob Dorman Mar 1 at 0:27

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.