bedrock

by roots

roots / bedrock

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

5.0K Stars 998 Forks Last release: about 2 months ago (1.14.2) MIT License 595 Commits 84 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Bedrock

MIT License Packagist Build Status Follow Roots

A modern WordPress stack
Built with ❤️

Official Website | Documentation | Change Log

Supporting

Bedrock is an open source project and completely free to use.

However, the amount of effort needed to maintain and develop new features and products within the Roots ecosystem is not sustainable without proper financial backing. If you have the capability, please consider donating using the links below:

Donate via Patreon Donate via PayPal

Overview

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)

Requirements

Installation

  1. Create a new project:
    sh
    $ composer create-project roots/bedrock
    
  2. Update environment variables in the
    .env
    file. Wrap values that may contain non-alphanumeric characters with quotes, or they may be incorrectly parsed.
  • Database variables
    • DB_NAME
      - Database name
    • DB_USER
      - Database user
    • DB_PASSWORD
      - Database password
    • DB_HOST
      - Database host
    • Optionally, you can define
      DATABASE_URL
      for using a DSN instead of using the variables above (e.g.
      mysql://user:[email protected]:3306/db_name
      )
  • WP_ENV
    - Set to environment (
    development
    ,
    staging
    ,
    production
    )
  • WP_HOME
    - Full URL to WordPress home (https://example.com)
  • WP_SITEURL
    - Full URL to WordPress including subdirectory (https://example.com/wp)
  • AUTH_KEY
    ,
    SECURE_AUTH_KEY
    ,
    LOGGED_IN_KEY
    ,
    NONCE_KEY
    ,
    AUTH_SALT
    ,
    SECURE_AUTH_SALT
    ,
    LOGGED_IN_SALT
    ,
    NONCE_SALT
  1. Add theme(s) in
    web/app/themes/
    as you would for a normal WordPress site
  2. Set the document root on your webserver to Bedrock's
    web
    folder:
    /path/to/site/web/
  3. Access WordPress admin at
    https://example.com/wp/wp-admin/

Documentation

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

Contributing

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

Bedrock sponsors

Help support our open-source development efforts by becoming a patron.

Kinsta KM Digital Carrot C21 Redwood Realty

Community

Keep track of development and community news.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.