Beyond FTP - My WordPress Development Workflow

Beyond FTP - My WordPress Development Workflow

We have all used FTP as developers to move files from editing them locally to our production server. Developers know the problems this can cause and why alternatives are needed. In this talk I will introduce my WordPress development process and how you can move on from FTP to a more robust development and deployment system. The talk is suitable for developers and designers who build complete sites, or work in teams in which they are responsible for delivering part of a project, collaborating with others.

31af50af29856a3e6734bdae0a0d68cf?s=128

Mark Wilkinson

November 17, 2015
Tweet

Transcript

  1. BEYOND FTP My WordPress Dev Worflow Mark Wilkinson | markwilkinson.me

    | @wpmark
  2. Freelance WordPress Developer Co-organiser of WordPress Cumbria Former secondary school

    teacher Plugin author
  3. my old setup local development version control staging/production deployment

  4. my old setup local development version control staging/production deployment

  5. my old setup local development version control staging/production deployment

  6. my old setup local development version control staging/production deployment

  7. my old setup local development version control staging/production deployment

  8. FTP File Transfer Protocol

  9. None
  10. None
  11. None
  12. None
  13. None
  14. None
  15. None
  16. Insanity: doing the same thing over and over again and

    expecting different results Albert Einstein “
  17. Be Brave – Try Something New disney.com/brave

  18. local development

  19. mamp mac / apache / mysql / php

  20. http://localhost

  21. <VirtualHost *:80> DocumentRoot "/Users/local-sites/wpmark" ServerName markwilkinson.dev </VirtualHost> /Applications/MAMP/conf/apache/extra/httpd-vhosts

  22. 127.0.0.1 markwilkinson.dev

  23. markwilkinson.dev

  24. Version Control

  25. None
  26. git bitbucket github

  27. http://xkcd.com/1597/

  28. Staging / Production https://www.flickr.com/photos/thisisbossi/3796673513

  29. Local Dev Staging Production

  30. Local Dev Staging Production Local Dev C Local Dev B

  31. DEPLOYMENT deployhq

  32. None
  33. http://commons.wikimedia.org/wiki/File:Hurdles_(Scenes_from_a_Track_Meet).jpg Hurdles

  34. wp-config.php

  35. http://markjaquith.wordpress.com/2011/06/24/wordpress-local-dev-tips/ if ( file_exists( dirname( __FILE__ ) . '/local- config.php'

    ) ) { include( dirname( __FILE__ ) . '/local-config.php' ); define( 'WP_LOCAL_DEV', true ); define( 'WP_STAGING_DEV', false ); } else { // ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ }
  36. Media Library

  37. .gitignore wp-content/uploads/

  38. DATABASE

  39. WP Migrate DB Pro from $89 Search and Replace $free

  40. RECAP

  41. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  42. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  43. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  44. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  45. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  46. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  47. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  48. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  49. 1.  Create your repo 2.  Pull to local dev 3. 

    Build site local – commit as you go 4.  Setup Staging (migrate DB) 5.  Setup deployment (production & staging) 6.  Push to staging 7.  Setup Production (migrate DB) from staging 8.  Push to production
  50. Thank you Questions? @wpmark markwilkinson.me github.com/wpmark profiles.wordpress.org/wpmarkuk P.S. I’m available

    for hire!