, (*1)
Sage is a WordPress starter theme based on HTML5 Boilerplate, gulp, Bower, and Bootstrap Sass, that will help you make better themes., (*2)
Requirements
| Prerequisite |
How to check |
How to install |
| PHP >= 5.4.x |
php -v |
php.net |
| Node.js 0.12.x |
node -v |
nodejs.org |
| gulp >= 3.8.10 |
gulp -v |
npm install -g gulp |
| Bower >= 1.3.12 |
bower -v |
npm install -g bower |
For more installation notes, refer to the Install gulp and Bower section in this document., (*3)
Features
-
gulp build script that compiles both Sass and Less, checks for JavaScript errors, optimizes images, and concatenates and minifies files
-
BrowserSync for keeping multiple browsers and devices synchronized while testing, along with injecting updated CSS and JS into your browser while you're developing
-
Bower for front-end package management
-
asset-builder for the JSON file based asset pipeline
-
Sass Bootstrap
- Theme wrapper
- ARIA roles and microformats
- Posts use the hNews microformat
-
Multilingual ready and over 30 available community translations
Install the Soil plugin to enable additional features:, (*4)
- Cleaner output of
wp_head and enqueued assets
- Cleaner HTML output of navigation menus
- Root relative URLs
- Nice search (
/search/query/)
- Google CDN jQuery snippet from HTML5 Boilerplate
- Google Analytics snippet from HTML5 Boilerplate
Installation
Clone the git repo - git clone https://github.com/roots/sage.git and then rename the directory to the name of your theme or website., (*5)
If you don't use Bedrock, you'll need to add the following to your wp-config.php on your development installation:, (*6)
define('WP_ENV', 'development');
Configuration
Edit lib/config.php to enable or disable theme features, (*7)
Edit lib/init.php to setup navigation menus, post thumbnail sizes, post formats, and sidebars., (*8)
Theme development
Sage uses gulp as its build system and Bower to manage front-end packages., (*9)
Install gulp and Bower
Building the theme requires node.js. We recommend you update to the latest version of npm: npm install -g npm@latest., (*10)
From the command line:, (*11)
- Install gulp and Bower globally with
npm install -g gulp bower
- Navigate to the theme directory, then run
npm install
- Run
bower install
You now have all the necessary dependencies to run the build process., (*12)
Available gulp commands
-
gulp — Compile and optimize the files in your assets directory
-
gulp watch — Compile assets when file changes are made
-
gulp --production — Compile assets for production (no source maps).
Using BrowserSync
To use BrowserSync during gulp watch you need to update devUrl at the bottom of assets/manifest.json to reflect your local development hostname., (*13)
For example, if your local development URL is http://project-name.dev you would update the file to read:, (*14)
...
"config": {
"devUrl": "http://project-name.dev"
}
...
If your local development URL looks like http://localhost:8888/project-name/ you would update the file to read:, (*15)
...
"config": {
"devUrl": "http://localhost:8888/project-name/"
}
...
Documentation
Sage documentation is available at https://roots.io/sage/docs/., (*16)
Contributing
Contributions are welcome from everyone. We have contributing guidelines to help you get started., (*17)
Keep track of development and community news., (*18)