Skip to content

WP Packages is our new WPackagist replacement that's 17x faster and updates every 5 minutes

Bedrock

Roots and WP Packages are independent open source projects, supported only by developers like you. We’ve been improving the WordPress developer experience since 2011, and your support keeps it independent.

Using Bedrock with Local

View as Markdown:

Local, previously known as Local by Flywheel, is one of the many local development tools available for WordPress developers. In this guide you will learn how to configure Local for a Bedrock-based WordPress site.

Bedrock sites are structured in a way that your entire WordPress site is managed from a git repository. Local's workflow isn't friendly towards this approach, but it's still possible to configure Local to work with Bedrock sites.

Create a new site

Create a new site from the Local interface. In this guide, we'll use bedrock as the site name.

Installing Bedrock from the terminal

From your new Local site, click Open site shell. When the terminal opens, you should be under /Local Sites/bedrock/app/public.

First, remove the default WordPress installation that is in the public folder:

rm -rf *
rm .htaccess

This will remove all content of the public folder.

Now install Bedrock with Composer into the public directory or clone your existing git repository into this directory:

composer create-project roots/bedrock .

Configure environment variables

Bedrock requires environment variables to be configured in order to get started.

First, copy the example environment file:

cp .env.example .env

The .env file must be configured with Local's database settings along with your home URL. Update the following values in your .env file:

DB_NAME='local'
DB_USER='root'
DB_PASSWORD='root'

WP_HOME='https://bedrock.local'

For Local WP these are the default DB credentials. If you changed them manually, then you need to change them here accordingly. The WP_HOME should be the website URL we configured in Local - in our case here it's bedrock.local.

Set the webroot in Local's site config

Local's site config is located at ~/Local Sites/bedrock/conf/nginx/site.conf.hbs. Open this file and append /web to the server root:

server {
    listen {{port}};
-   root   "{{root}}";
+   root   "{{root}}/web";

You will need to restart your site after making these changes, and then your site will be accessible at https://bedrock.local.

Last updated