In Luis Majanos last webinar, "Widgets, Modules, Themes Oh My" ( View Recording ), there was so much to say about Widgets and Modules, there was no time left for Themes. Since there was a lot of interest, we have extended our whole roadshow one more week, so you'll get this blog post, and 2 more this week, and the final webinar will be Friday August 5th ( 9am PST 11am Central), a Deep Dive on Themes. ContentBox 3 has a lot of updates regarding themes, we'll give you a taste below on what you'll learn about in the webinar.
Since ContentBox is built on ColdBox, and ColdBox got a big update from 3.8 to 4.0, so did ContentBox. Layouts were only a small part of what we are now calling Themes.
New Theme Descriptor - Theme.cfc
Themes now support Theme.cfc for describing your theme, and your settings. This will be backward compatible, this change will make it easier for tooling to tap into the Theme settings.
Theme Setting Groups
Themes are getting bigger, better, and more complex, and so are the theme settings. With this in mind, we introduced Setting Groups, so settings can be logically grouped together, to make it easier to manage your theme once it is installed on your website.
Themes are build on top of ColdBox 4 modularity, and now Themes can include Modules. Themes today need to do so much more, so tap into modules and do not reinvent the wheel. You can ship your theme with as many modules as your theme needs.
Theme Settings are great for most options you might need to give users of your theme, but sometimes, you might want to have something special in the settings form, or maybe in the Theme Info page. You can control this now, by intercepting Theme Events. You can tie into the following theme events
- cbadmin_preThemeSettingsSave - Before saving theme settings
- cbadmin_postThemeSettingsSave - After saving theme settings
- cbadmin_onThemeSettings - When displaying theme settings in the admin UI
- cbadmin_onThemeInfo - When displaying theme information on the admin UI
Theme Development Process
When developing a theme, we recommend using tools like Grunt, and Bower to streamline your workflow, and deliver only the required assets to your theme user. We have grunt and bower setup for our new themes built for ContentBox 3, and we'll show you how one of those work flows actually works, so you can get up and running in developing your own theme, utilizing all of the work flows needed, including copy assets, minifying, cache busting, Sass compilation, and anything else you may need.
Join Luis Majano on Friday, August 5th at 9am PST, 11am Central to see all of this, ask questions, and more.