Home >CMS Tutorial >WordPress >Modernizing WordPress Theme Development with Sage
Sage: A Modern WordPress Theme Framework
Several years ago, we featured Roots, a WordPress theme framework. Roots has since evolved into a company offering two powerful toolsets: Sage and Bedrock. This article focuses on Sage, a framework leveraging HTML5 Boilerplate, Gulp, Bower, and Bootstrap for streamlined WordPress theme development. We'll cover an overview of these tools, installation, customization, and the basic Sage workflow.
Key Advantages of Sage:
Essential Tools:
Installation:
Sage installation utilizes Git. Navigate to your WordPress theme directory and execute the following command in your terminal (replace theme-name
with your chosen theme name):
<code class="language-bash">git clone https://github.com/roots/sage.git theme-name</code>
Alternatively, download the zip file from the GitHub repository, extract it, and copy the contents to a new folder within your WordPress theme directory.
Next, configure WordPress for development mode by adding this line to your wp-config.php
file:
<code class="language-php">define('WP_ENV', 'development');</code>
Theme Directory Structure:
Sage maintains a standard WordPress theme structure with additions for enhanced functionality:
index.php
, functions.php
, 404.php
, etc.)lib
directory: Contains theme configuration and utility files (assets.php
, init.php
, titles.php
).assets
directory: Houses Sass/Less files compiled into main.css
, along with JavaScript and image assets.lang
directory: Contains the sage.pot
file for theme translation.templates
directory: Holds HTML5 Boilerplate-based templates.Customization:
Customize Sage via the lib/init.php
file. Key customization points include:
add_theme_support('title-tag')
.register_nav_menus()
.add_theme_support('post-thumbnails')
.add_theme_support('post-formats')
.add_theme_support('html5')
.add_editor_style()
.register_sidebar()
within the widgets_init()
function.Workflow:
Sage's workflow relies on Node.js and npm packages. Install necessary tools using npm:
<code class="language-bash">git clone https://github.com/roots/sage.git theme-name</code>
Using Bower:
Use Bower commands for managing front-end packages:
bower search <query></query>
: Search for packages.bower install <package></package>
: Install packages.bower list
: List installed packages.bower uninstall <package></package>
: Uninstall packages.Using Gulp:
Install Gulp plugins:
<code class="language-php">define('WP_ENV', 'development');</code>
Run gulp
to compile and optimize assets. gulp watch
provides real-time updates. The gulpfile.js
file controls the build process. Customize tasks and settings as needed within gulpfile.js
and assets/manifest.json
.
Conclusion:
Sage offers a powerful and efficient approach to WordPress theme development. By leveraging modern tools and a streamlined workflow, developers can create high-quality, responsive themes with ease. The detailed explanation of the process and customization options provided in this article should enable you to effectively utilize Sage for your next WordPress theme project.
The above is the detailed content of Modernizing WordPress Theme Development with Sage. For more information, please follow other related articles on the PHP Chinese website!