All Collections
WordPress Themes
Custom Themes
Custom WordPress Themes on Shifter
Custom WordPress Themes on Shifter

How to create and best practices for developing custom WordPress Themes on Shifter

Dano avatar
Written by Dano
Updated over a week ago

Shifter does support custom Themes. We also support most Page Builders, Premium Themes, Themes from WordPress Dot Org, and more.

When developing custom WordPress Themes on Shifter there are a few tips and notes that can help make the process easier.

Custom Theme Workflow

There are a million different ways WordPress developers set up their environment to build a new site. Through our experience, this is the ideal set up that works for us and we think it's worth a try.

The Ideal custom WordPress Theme Setup:

  • Develop Locally using Shifter-Local

  • Migrate your DB changes and Uploads using AIO WP Migration if necessary

  • Track Theme changes via Git

  • Deploy Theme changes tracked in Git with WP Pusher

Going from Local to Develop to Production

For example, here is a quick overview and step by step of deploying your custom Theme changes.

  1. Create a new local site using Shifter-Local

  2. Install your custom Theme, develop your code and commit your changes

  3. Push changes to Github, Bitbucket, etc.

  4. Create a new site on Shifter

  5. Install AIO WP MIgration and WP Pusher

  6. Create an export from your local site with AIO WP MIgration. Select just what you need such as DB, Media Uploads, etc.

  7. Upload that backup to your newly created site on Shifter

  8. Add your custom to WP Pusher's settings, sync an and activate that Theme

  9. Test to ensure your data and theme is correct

  10. Generate a new Artifact

After the initial setup, the process is simple. From your local env, commit your new changes to Git and push. Log into Shifter and pull them down.

At this time, that process it not automated but when Shifter Webhooks become available we are hoping to add this feature.

Is this the only way?

Nope! There are so many ways that developer prefer to work and we can't cover them all here. But if you do have a suggestion, let us know and we'll give it a try and add it to the official docs.

Did this answer your question?