Clients expect stability and accountability when collaborating with an agency. How will you delegate multiple features to different developers and not have to worry about whether they’re overwriting each other’s code or files? What if one of your developers gets sick amidst feature development, and you need to transition the work quickly?
In this series, we will walk you through creating an end-to-end development workflow that you and your developers can use to collaborate efficiently while continuously deploying safe, discrete changes to your client’s sites.
Here is an overview of the posts included in this series:
WP Engine’s Local allows you to run a development site on your computer where you can experiment without worrying about breaking staging or production sites. Also, with Local’s Connect and MagicSync, you can sync what you want (theme, plugin, database, etc.) from any WP Engine environment (Development, Staging, or Production).
This guide assumes that you’ve likely already installed WordPress before, that you’re familiar with how WordPress’s files and directories are organized, and that you can run commands from a command line application (iTerm, Hyper, Terminal). Also, you’re hopefully already familiar with the benefits of using Git for version control, and you’re already familiar with some of the basics of pushing and pulling from a GitHub repository. If not, then check out these handy Git Guides.
Let’s dive in!
Setting up a Local site
Having a full copy of your client’s site on your computer allows you to experiment and test new features without worrying about interrupting their user’s experience. Local makes it super duper easy!
First, be sure to download and install Local on your computer. Click on the ‘Download’ link below to get started. 👇
With Local installed, you’re ready to create your first site. Go ahead and click to Create a New Site, follow along with the guided steps, and you’ll have a running WordPress site in seconds.
When Local creates a new site, it installs WordPress, including all the database tables. Local offers many other customization options when making a new site, which we encourage you to check out. However, we want a simple site installed.
Now, we have an empty WordPress site with minimal customization, known as a fresh install. Whether you’re starting a new build from scratch or have an existing WP Engine site with your client’s data and a plethora of WordPress customizations already applied has yet to be considered.
From here, you have a few options on how to proceed:
- Start building and customizing directly on the Local site you created on your computer and either sFTP or use Local Connect to Push or Pull your changes to a WP Engine environment.
- Pull down a WP Engine environment’s complete files and database into your Local, and work on extending the client’s site from where it stands.
- Install WP Migrate DB Pro and transfer database information from an existing WordPress site and media.
Of course, there are even a few variations on the above workflows. However, we will focus on establishing an entire end-to-end process allowing you to add a new feature, stage it for the client to review, and then promote it to the final production environment when approved.
With this final goal in mind. Let’s focus on a scenario where we want to:
- Install the Frost WordPress theme, which we will use as a baseline for customizing for our client.
- Install a few standard WordPress plugins, like Yoast SEO.
Install and customize our Local WordPress site
For this step, we’re going to focus on keeping things simple. Remember, we’re demonstrating how to set up an end-to-end development workflow without providing recommendations for plugins or themes.
We’ll start by installing and activating the Frost WordPress theme. Frost provides us with a minimal but balanced starting point for our design.
We’ll be okay without renaming or customizing the theme too much, but if you’re curious, check out: How (and Why) to Build a Base WordPress Theme, which dives into building a base WordPress theme using Frost.
We’ll also install Yoast’s SEO plugin. Again, this is for demonstration purposes for our end-to-end workflow scenario.
So, you should have the following:
The Frost theme (or a fork of it) is installed and activated.
The Yoast SEO plugin is installed and activated.
This gives us a good WordPress site to continue setting up our workflow.
Next, we’ll explore establishing Git version control within our local WordPress installation.