This is a starter-theme for WordPress based on Foundation 6, the most advanced responsive (mobile-first) framework in the world. The purpose of FoundationPress, is to act as a small and handy toolbox that contains the essentials needed to build any design. FoundationPress is meant to be a starting point, not the final product.
Please fork, copy, modify, delete, share or do whatever you like with this.
All contributions are welcome!
This project requires Node.js v4.x.x to be installed on your machine. Please be aware that you may encounter problems with the installation if you are using v5.1.0 with all the latest features.
FoundationPress uses Sass (CSS with superpowers). In short, Sass is a CSS pre-processor that allows you to write styles more effectively and tidy.
The Sass is compiled using libsass, which requires the GCC to be installed on your machine. Windows users can install it through MinGW, and Mac users can install it through the Xcode Command-line Tools.
If you have not worked with a Sass-based workflow before, I would recommend reading FoundationPress for beginners, a short blog post that explains what you need to know.
$ cd my-wordpress-folder/wp-content/themes/
$ git clone https://github.com/olefredrik/FoundationPress.git
$ cd FoundationPress
$ npm install
$ npm run watch
If you want to take advantage of browser-sync (automatic browser refresh when a file is saved), simply open your Gulpfile.js and put your local dev-server address (e.g localhost) in this field var URL = '';
, save the Gulpfile and run
$ npm run watch
$ npm run build
Build all assets minified and without sourcemaps:
$ npm run production
style.css
: Do not worry about this file. (For some reason) it's required by WordPress. All styling are handled in the Sass files described below
assets/scss/foundation.scss
: Make imports for all your styles here
assets/scss/global/*.scss
: Global settings
assets/scss/components/*.scss
: Buttons etc.
assets/scss/modules/*.scss
: Topbar, footer etc.
assets/scss/templates/*.scss
: Page template spesific styling
Please note that you must run npm run build
or npm run watch
in your terminal for the styles to be copied and concatenated. See the Gulpfile.js for details
assets/javascript/custom
: This is the folder where you put all your custom scripts. Every .js file you put in this directory will be minified and concatenated one single .js file. (This is good for site speed and performance)Please note that you must run npm run build
or npm run watch
in your terminal for the scripts to be copied and concatenated. See Gulpfile.js for details
Version control on these files are turned off because they are automatically generated as part of the build process.
assets/stylesheets/foundation.css
: All Sass files are minified and compiled to this file
assets/stylesheets/foundation.css.map
: CSS source maps
assets/javascript/vendor
: Vendor scripts are copied from assets/components/
to this directory. We use this path for enqueing the vendor scripts in WordPress.
Foundation comes with everything you need to run tests that will check your theme for WordPress Coding Standards. To enable this feature you'll need to install PHP Codesniffer, along with the WordPress Coding Standards set of "Sniffs". You'll need to have Composer To install both run the following:
$ composer create-project wp-coding-standards/wpcs:dev-master --no-dev
When prompted to remove existing VCS, answer Yes by typing Y
.
Once you have installed the packages, you can check your entire theme by running:
$ npm run phpcs
If there are errors that Code Sniffer can fix automatically, run the following command to fix them:
$ npm run phpcbf
FoundationPress is completely ready to be deployed to and tested by Travis-CI for WordPress Coding Standards and best practices. All you need to do to activate the test is sign up and follow the instructions to point Travis-CI towards your repo. Just don't forget to update the status badge to point to your repositories unit test. Travis-CI
Credit goes to all the brilliant designers and developers out there. Have you made a site that should be on this list? Please let me know
Pull requests are highly appreciated. Please follow these guidelines: