Roots Theme homepage | Documentation table of contents
This file handles the theme activation. About the theme activation.
This file handles the various WordPress clean up. About the clean up.
This file is used to enable various theme features, define which pages get the sidebar, set the CSS classes for .main
and .sidebar
, set a Google Analytics ID, and set the post excerpt length.
add_theme_support()
is used to enable/disable:
- Root relative URLs
- Rewrites
- HTML5 Boilerplate's
.htaccess
- Bootstrap's top navbar
- Nice Search (redirect
/?s=
to/search/
)
If you don't want to use one of the features, either comment out the line or remove it.
roots_display_sidebar()
is used to define which pages shouldn't get the sidebar. By default, the 404, front front-page.php
and template-custom.php
templates are full width. If you would like to remove the sidebar from additional pages, add in the appropriate conditional or page template name.
This file runs the initial theme setup and defines helper constants for later use
This file contains all the custom nav modifications (for Bootstrap) and clean up.
This file handles the clean URL rewrites. About the rewrites.
This file handles all of the CSS and JavaScript.
Class which provides a simple configuration interface to define what pages you want to show the sidebar on.
Stylesheets are enqueued in the following order:
/theme/assets/css/bootstrap.css
/theme/assets/css/bootstrap-responsive.css
/theme/assets/css/app.css
/child-theme/style.css
(if a child theme is activated)
app.css
should be used for your site specific styling.
If you're using LESS, make sure you compile the files to the proper locations:
css/less/bootstrap.less
->css/bootstrap.css
css/less/responsive.less
->css/bootstrap-responsive.css
JavaScript is loaded in the following order:
jquery-1.9.1.min.js
via Google CDN with local fallback/theme/assets/js/vendor/modernizr-2.6.2.min.js
/theme/assets/js/plugins.js
(in footer)/theme/assets/js/main.js
(in footer)
jQuery is loaded using the same method from HTML5 Boilerplate: grab Google CDN's jQuery, with a protocol relative URL; fallback to local if offline. It's kept in the header instead of footer to avoid conflicts with plugins.
plugins.js
contains a minified version of all the latest Bootstrap plugins.
Learn about plugins.js
and main.js
in the HTML5 Boilerplate JavaScript docs.
It's safe to move jQuery to the footer if you're able to avoid problems with certain plugins that improperly use jQuery. Copy the necessary lines from head.php
to footer.php
right before wp_footer()
, then update the wp_register_script()
calls scripts.php
to have scripts in the footer by setting the last argument to true
.
This file contains utility functions used by other files in the theme.
The theme wrapper is used to serve all of the template files. About the theme wrapper.
This file registers the custom sidebars and custom widgets. There are two initial sidebars:
- Primary Sidebar (used by
templates/sidebar.php
, included frombase.php
within.sidebar
) - Footer (used by
templates/footer.php
)
The included vCard widget can be used to build additional, custom widgets.