Mminner4248 / bedrock

WordPress boilerplate with modern development tools, easier configuration, and an improved folder structure

Home Page:https://roots.io/bedrock/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tandem's Fork of Bedrock

This fork contains additional logic so that it can be easily used on:

  1. platform.sh
  2. Pantheon

The major difference is that we are not using the .env file. Instead we are loading the specific hosting platform's config into the application.php. We are also including the additional settings / config added by bedrock.

Lando

We streamline our localdev with Lando, you should too. The hash values in the .env can cause problems sometimes with lando. So you can either not install those value or copy the .env.lando to .env instead. Also change WP_HOME=demosite to your lndo.site domain.

For quick and easy setup use Tandem's WP Boilerplate instead.

Packagist Build Status

Bedrock is a modern WordPress stack that helps you get started with the best development tools and project structure.

Much of the philosophy behind Bedrock is inspired by the Twelve-Factor App methodology including the WordPress specific version.

Features

  • Better folder structure
  • Dependency management with Composer
  • Easy WordPress configuration with environment specific files
  • Environment variables with Dotenv
  • Autoloader for mu-plugins (use regular plugins as mu-plugins)
  • Enhanced security (separated web root and secure passwords with wp-password-bcrypt)

Use Trellis for additional features:

  • Easy development environments with Vagrant
  • Easy server provisioning with Ansible (Ubuntu 16.04, PHP 7.1, MariaDB)
  • One-command deploys

See a complete working example in the roots-example-project.com repo.

Requirements

Installation

  1. Create a new project in a new folder for your project:

composer create-project roots/bedrock your-project-folder-name

  1. Update environment variables in .env file:
  • DB_NAME - Database name
  • DB_USER - Database user
  • DB_PASSWORD - Database password
  • DB_HOST - Database host
  • WP_ENV - Set to environment (development, staging, production)
  • WP_HOME - Full URL to WordPress home (http://example.com)
  • WP_SITEURL - Full URL to WordPress including subdirectory (http://example.com/wp)
  • AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY, NONCE_KEY, AUTH_SALT, SECURE_AUTH_SALT, LOGGED_IN_SALT, NONCE_SALT

If you want to automatically generate the security keys (assuming you have wp-cli installed locally) you can use the very handy wp-cli-dotenv-command:

  wp package install aaemnnosttv/wp-cli-dotenv-command

  wp dotenv salts regenerate

Or, you can cut and paste from the Roots WordPress Salt Generator.

  1. Add theme(s) in web/app/themes as you would for a normal WordPress site.

  2. Set your site vhost document root to /path/to/site/web/ (/path/to/site/current/web/ if using deploys)

  3. Access WP admin at http://example.com/wp/wp-admin

Deploys

There are two methods to deploy Bedrock sites out of the box:

Any other deployment method can be used as well with one requirement:

composer install must be run as part of the deploy process.

Documentation

Bedrock documentation is available at https://roots.io/bedrock/docs/.

Contributing

Contributions are welcome from everyone. We have contributing guidelines to help you get started.

Community

Keep track of development and community news.

About

WordPress boilerplate with modern development tools, easier configuration, and an improved folder structure

https://roots.io/bedrock/

License:MIT License


Languages

Language:PHP 100.0%