Thesis 2.3 Delivers WooCommerce Compatibility and MORE SPEED

by Chris Pearson · 55 comments

Thesis version 2.3 screenshot

With each passing day, the future of your website depends more and more on two things—speed and integrations.

As you know, Thesis has always had you covered on the speed side of things. Version 2.3 brings you even better performance on both the front end and the admin side, so your site will be faster and more efficient than ever before.

But integrations? What does that even mean?

It’s simple. One piece of software—no matter how good—is not going to serve all your needs. To achieve your website goals, you’re likely going to need to integrate at least two pieces of software (and probably more) to get everything working the way you want.

For example, the DIYthemes website relies on no fewer than 4 different software integrations…and take it from me, it can be a real pain to keep up with this stuff over a long period of time!

This is a big reason why we’ve decided to refocus our development efforts on enhancing software integrations with Thesis.

First up? A best-in-class WooCommerce integration in Thesis 2.3, and there’s a bonus—this integration will automatically work with any Thesis Skin!

In other words, if your site didn’t “just work” with WooCommerce before, it will now! Read on for the juicy details.

Extremely Detailed WooCommerce Integration

I’m generally against putting code in the Thesis core that exists only to enhance compatibility with a specific piece of Third Party software, so that’s why we haven’t seen a major WooCommerce integration before now. (And technically, Boxes are supposed to serve this purpose.)

But let’s face it—WooCommerce is huge because being able to sell products quickly and easily from your website is a big, big deal. On top of that, Thesis users were experiencing frustrating obstacles when trying to use even basic WooCommerce features on their sites.

I finally decided it was time to build the ultimate WooCommerce integration into Thesis, so that’s precisely what I did.

Version 2.3 declares WooCommerce support and sets up your templates to work properly regardless of the Skin you’re using, but that’s only the beginning.

As many of you probably already know, WooCommerce is brutally inefficient and slow. Simply activating the WooCommerce Plugin will slow down every page of your site with lots of scripts and stylesheets—regardless of whether or not a particular page needs or uses WooCommerce at all!

Unacceptable. A ham-fisted, inefficient approach like this just isn’t the “Thesis way.”

This is why Thesis 2.3 also includes automatic WooCommerce optimization. Only pages of your site that need WooCommerce will include the necessary scripts and stylesheets; the rest of your pages will be just as fast and efficient as if you weren’t even using the Plugin!

Now that is the Thesis way.

Thesis Skins and Enhanced WooCommerce Support

Of course, I couldn’t just stop with basic WooCommerce integration. I also wanted to make it easy for Skin developers to add enhanced WooCommerce support to their Skins. Here’s why that matters:

Every Skin is different, which means every WooCommerce integration is going to be different, too. Thesis does the heavy lifting here, but Skins can still improve the WooCommerce experience by making specific adjustments to both templates and CSS.

With Thesis 2.3, template adjustments are easy with the new woocommerce() method in the Skin API.

CSS adjustments are easy, too, and developers can get insight on this as well as every other detail of the integration process with our WooCommerce compatibility guide.

Need WooCommerce compatibility right away? (Classic Responsive 1.4 Update)

If you want the full WooCommerce compatibility experience right away, all you need to do is grab the Classic Responsive Skin version 1.4 update.

After updating the Classic Responsive Skin, you’ll need to:

  1. Update your Skin CSS
  2. Save your Design options

…and your site will deliver the ultimate WooCommerce experience.

Oh, and one important note: With Thesis 2.3, WooCommerce’s native product and product archive pages are fully configurable in terms of content (archive title, archive description), SEO data (title tag, meta tags, and more), and template.

In other words, Thesis gives you a level of control that will enable you to create the most optimized product pages on the planet.

And with Classic Responsive version 1.4, you can take advantage of this immediately.

New Documentation Links

I know you guys and gals will appreciate this new feature! As of version 2.3, Skins and Boxes can now provide a link to associated documentation, and Thesis will include these links in helpful locations within the Thesis Admin.

For example, you’ll see this documentation link after updating to Classic Responsive 1.4:

Skin documentation link

And here’s what Box documentation links look like (along with a hint or two about some more good stuff we’ve got for you):

Box documentation link

Let’s just take a deep breath and savor this one for a moment.

Mmmmm. So helpful. So good.

Ok, moving on…

Expert Security Audit

Thesis user and security expert Jay Dansand performed an audit on the software and provided us with a list of recommendations to improve security and harden potential vulnerabilities.

Needless to say, we implemented his recommendations! Also, I must say that I am personally grateful to Jay because I learned a few things from him throughout this process.

Caching Detection (or how we solved our #1 support request)

  • “My design options don’t work!”
  • “My Custom CSS isn’t working!”
  • “I can’t make any changes with Thesis!”

Nine times out of ten, the above problems are caused by the use of a caching Plugin like W3 Total Cache or WP Super Cache. I tell ya—it’s enough to drive a man insane.

But one day, it hit me: What if, instead of going insane, I just solved this problem with some simple code?

Thanks to this brilliant insight, Thesis 2.3 will detect if you’re using a caching Plugin, and it’ll notify you of potential issues and give you a link to these instructions on what to do.

A solution so simple, it’s no wonder I didn’t think of it sooner.

Improved WP-CLI Compatibility

Lots of “managed WordPress hosts” are now using WP-CLI to handle server-level WordPress actions, and this was causing various issues with prior versions of Thesis.

I worked with a couple of these hosts to troubleshoot and resolve these issues, and ultimately, this resulted in a modified Thesis launch sequence with improved component timing.

Or to put it another way:

Thesis is like the conductor of an orchestra, and it must call upon its components (instruments) at precisely the right time, or else the music just won’t make any sense 😀

Click-to-reveal on Thesis Admin Menus

I’ve never really been a fan of the hover-to-reveal behavior that has characterized dropdown navigation menus since the dawn of time (or 2005, whichever was first).

Let’s face it—the unintentional hover that results in a menu covering precisely the item you intended to click gets pretty old after the 1000th time.

Well, never again, because the Thesis Admin menu items are now all click-to-reveal:

Thesis Admin menu click-to-reveal behavior

Another notable point about this change is that devices with touch interfaces don’t have an equivalent hover behavior. From the perspective of consistency across devices, this move really makes sense.

Can you touch the top of your <head>?

With prior versions of Thesis, if you needed to put something at the top of your document <head>, you had to do some pretty interesting code gymnastics to make it happen.

There are plenty of reasons why this spot in the HTML document needs to be readily accessible, and that’s why Thesis 2.3 includes a new hook—hook_head_top—in this location.

We’re going to be using this hook to bring you hassle-free integrations for both Google Tag Manager and Google Analytics Experiments, so stay tuned for those in the coming days!

More Speed! (It’s kind of my thing.)

While squashing a couple of Thesis Admin bugs, I happened to lose myself down a performance and optimization rabbit hole. By the time I came out, I had improved Thesis’ resource usage and curtailed unnecessary actions wherever possible.

The result? Both your front end and your admin side will run faster and more efficiently with Thesis 2.3.

But wait, there’s more!

From updated Google Fonts to System Status enhancements and various bug fixes, there’s a lot of good stuff in this Thesis update. Have a look at the version 2.3 changelog for all the gory details!

How can you get Thesis 2.3?

If you’re already a customer and are using Thesis on your sites, simply look for an automatic update notification in your WordPress Dashboard. You can also grab the Thesis download file here (login required).

If you’re not yet a Thesis customer, you can buy a license and turn your site into a WooCommerce powerhouse in under 10 minutes. Grab a license here, and then let Thesis handle the integration dirty work for you.

Finally, if you have questions or just want to talk about Thesis 2.3, please leave a comment below!

Problems with scripts after updating? That’s because <script> tags are no longer allowed in Text Boxes. To fix this, see how you can add any type of script to Thesis.

About the Author: Chris Pearson, Thesis creator and DIYthemes founder, is obsessed with optimizing the web and making sure every last detail receives the attention it requires. Follow DIYthemes on Twitter for the latest tips and info on building effective websites.

If you enjoyed this article, enter your email below to get free updates!



Thank you, will give this a go once I get home. I was wondering if thesis was daying slowly but it looks like a lot of work is being done behind the scenes.

Chris Pearson

Stalyn, we are always working on new stuff, and we’ve got a lot more planned over the coming weeks!


What will this mean for sites that already have woocommerce installed using the thesis integrator?

Chris Pearson

Sarah, it is my understanding that the WooCommerce Integrator Plugin is no longer being maintained (and is also no longer available).

Fortunately, Thesis’ built-in WooCommerce integration means there is no need for this Plugin, especially since Thesis’ integration is superior.


That’s great – my question though is what will happen for sites using the integrator that upgrade to the new thesis?

Chris Pearson

Your sites will work even better than before.

(It’s my understanding that the Integrator Plugin had some issues with more recent WooCommerce updates.)

The bottom line is that integration doesn’t add or remove anything, so your site will be the same as before. Be sure you deactivate the Integrator Plugin, though.


That won’t impact the custom skins that were created using it?

Chris Pearson

It shouldn’t make any difference, unless that Plugin was also serving additional content beyond what WooCommerce serves by default.

I really think you won’t have any problems.

On top of that, this isn’t a “no going back” issue. You can disable the Plugin and test your Skins; if you don’t like what you see, you can always re-enable the Plugin.

Again, though—the Thesis 2.3 WooCommerce integration is cutting edge and will be maintained, whereas the Integrator Plugin is over 4 years old and effectively dead.

You will be a lot better off using the latest and greatest from us.

Keith Jones

Looking Good. Nice piece of work.

Does this mean we no longer have to use the Woo integrator.

Chris Pearson

Correct. There is no longer a need for that outdated Plugin.


Nice to see regular update to stay upto to date with new technologies.


Wow this is awesome thank you Chris, & team!


Hi Chris

I think you are really nailing it on the direction you are taking with Thesis. I have plugins to do e-commerce that are just killing me (piles of code bloat on every page) so this is great news. Never mind the foo-foo features other themes concentrate on, instead solve real problems like this.

Any timing on Effectus/WooCommerce release? If I understand correctly, only classic responsive now? That’s cool as long as we get Effectus in the next few months. (We built our site on Effectus and added a bunch of CSS mods, so changing would be hard.)

Now start charging us an annual support fee. Yea, I know I have said it before, but I run a membership site and recurring revenue is a life-changer and frees us to be more creative.

Chris Pearson

John, thanks for stopping by.

Any timing on Effectus/WooCommerce release?

Here’s the deal—WooCommerce will work with Effectus right now. The difference between “compatibility” and “enhanced compatibility” (which is what Classic Responsive has) is that some templates may not look perfect.

In other words, you’re not going to need to make any modifications (CSS or otherwise) with Classic Responsive. Until we update Effectus with “enhanced compatibility,” some of your templates may still include undesirable elements.

We’re talking about some very minor issues, though. If you’re the intrepid type, simply start using WooCommerce and Effectus now, and make sure you place any CSS modifications in your Custom CSS (where they will be safe for future Skin updates).

Now start charging us an annual support fee.

To be honest, I would have already implemented this in January 2017 if we weren’t under so much technical debt (going as far back as 2008). We are looking at over 100 man-hours of code + development to move to a new system and accommodate everyone who has already purchased, and we simply cannot afford that at this time.

Given our current manpower, the only thing we are in a position to do is flip the switch to a new system and force everyone to sign up again. I don’t see that sitting well with a lot of customers, though.


Hi Chris,

Great on Effectus, that works fine for me.

And on the problems of legacy billing/licensing systems, I feel, and share your pain. (We have a similar problem due to an old system decision and fixing it is going to SUCK big time.)

Anyway, when you get it sorted, we will be first in line to sign up: you gotta support the people that make the software your business is based on. I now have a couple of custom boxes from Rick over at BYOB and that with Thesis is making a real difference to our member’s experience.

Adolfo Calsin

Excellent the update and we expected, now I have to implement my e-commerce projects

Bernard Go


When I go to my WordPress Dashboard > Appearance > Themes after updating, the image must be updated to reflect v 2.3, not v 2.2.

Chris Pearson

Bernard, just hit shift + refresh on that page, and you’ll see the updated image.


Are there any known issues with plugins when updating from to 2.3? This seems like it should be a simple click the button update. Would love to know that this is true.

Chris Pearson

Jonathan, at this time, there are no known issues with Plugins and the Thesis 2.3 update. It should be “click it and forget it!”

Keith Jones

Worked for me on 3 sites.

Gowtham V

Thanks for the update Chris.
With the new woocommerce integration built into the core of thesis 2 it will be lot easier to use woocommerce without any integration plugins 🙂

Gowtham V

Suraj Soni

Yes speed is very important and many plugins can slow it down as we are into ecommerce industry so this plugin will be very helpful for our business.

Jaxson Cole

What about the old woocommerce skins.
These skins will work with latest version of thesis or not?

Chris Pearson

Jaxson, any “old WooCommerce Skins” are going to be third party Skins, as DIYthemes has never released a “WooCommerce Skin.”

Because of this, it’s impossible to say with certainty that every little detail of a separate WooCommerce integration is still going to operate the same way.

If you are concerned about future compatibility, you may want to try loading up Thesis 2.3 on a development server before flipping the switch on your live site.

Jaxson Cole

Ok, and what about woocommerce 3.0.0 as it have big changes. Is it compatible with WC 3.0.0

Chris Pearson

The changes in WooCommerce 3.0.0 will actually make it run even better with Thesis!

Jaxson Cole

Ok, Thank you is there any other way to contact you because this link is only for members.

Chris Pearson

WTF? You’re not a member? You should feel ashamed, honestly.

We produce great software and are eager to help you build an awesome website. We only ask for a small license fee in return. You are effectively stealing from us.


Thanks for the update.

saai badlya

I’m used woocommerce since 3 years and i hope thesis 2.3 helps me lot. it’s wow information about thesis 2.3. thanks chris for this useful information.

Really nice stuff and expect same from you in future. I will definitely use it for my woocommerce.


Seems that thesis skin content boxes are somehow broken.

html comments “<–" are displayed.
Javascript inside a content box is now rendered as plain text

My whole site is broken beause of those JS issues.

How do I do a rollback?!

Chris Pearson

Jan, you are experiencing unwanted output because you have placed scripts inside one or more Text Boxes. This is a huge security risk and is no longer allowed in Thesis 2.3.

Please open a support request, and I will provide you with instructions on how to place your scripts in the most secure manner.

Update: See how to add any type of script to Thesis.


I see!

I’ll try the custom hook method.



One question:

which of the boxes I can add in thesis editor provide a hook name? In my boxes I can see “Display ID” but not “Hook Name”.

I need to insert a script inside a template at a very special location.


ok found it.


Can we use the Caching-Plugins now to full extend? Befor we had to deactivate HTML minimazation.

Chris Pearson

Yes, you can use minimization and any other caching features you like.

juan martinez

Thanks this sped up my ecommerce site by 2 seconds and got me in the green on google page insight. Ill try the cleanup box

Chris Pearson

Wow, that’s awesome!

Bilal Ahmad

Thanks chris for the wonderful features. I was facing issue with the Statcounter script code issue after upgrading but is now fixed. Thanks again.

mac mcrae

i love thesis. it is so clean and fast – with such nice typography. i hope chris keeps updating it like this.

Jack Enright

Hi Chris, I noticed on 2.3 (and 2.3.1) a couple nitpicky things: One is that the dropdowns for Skin/Site/Boxes overlap if more than one are clicked, and usually with dropdowns if another one is clicked then the first one will automatically retract back.

The other is that the “click to edit” text in the shortcut to the Skin Editor on the bottom left of the site runs up against the border on the right side. It might look better with capitalization of Click as well. Again, minor things, but it might improve it nonetheless.

Chris Pearson

Thanks for stopping by, Jack. Click-to-open (and click-to-close) is basically lightswitch operation—super intuitive for everyone. I may end up changing the behavior to match what you’ve described, but I honestly don’t see it as being all that beneficial. It satisfies the OCD crowd, though 😀

Also, I’m not experiencing the issue with the template launcher button on the front end. Which Skin are you using? Can you send a screenshot to support?

Jack Enright

That makes sense. The launcher button might be too trivial to bother with, as I just meant it was off by a few pixels (the left side has about 5 pixels of padding that the right doesn’t). I’m running Promo, but I think it would be the same regardless. If you really like, I could zoom in and screenshot it anyway.

Chris Pearson

Jack, the launcher alignment would drive me insane if it weren’t correct. Pixels aren’t allowed to be “a little off” in my neighborhood.

I believe your Custom CSS is likely the issue, as my out-of-the-box version of Promo does indeed have perfect alignment on the launcher button.

Chris Pearson

Unless you’re looking at the launcher on a page running a template with a very long name, something else is amiss. For me, the launcher looks great on Home, Single, etc templates.

If you don’t mind, please send a screenshot via official support request so I can take a closer look.


We are testing Thesis 2.3 with the latest Classic Responsive skin version and Woocommerce 3.02.
We have been using these shortcodes to display products on a page:

[products skus=”s002, s003″ columns=”3″ orderby=”sku” order=’asc’]

In the new environment, the products don’t display in columns, but instead one per row. Has something changed in how these shortcodes should function?

Thank you!

David Alexander

I think this is because the CSS only loads on pages Thesis “detects” as requiring it, the same with other scripts. So if you use shortcodes on a page that isn’t a default WooCommerce page then the styles are missing.

Chris – Could you add a check to see if a page has a woocommerce shortcode added so that the css styles could also be loaded in this instances? Just a thought.


Chris Pearson

David, the solution is to turn off Thesis’ WooCommerce script optimization.

It’s simply not reasonable to pull all the content before generating the template, run it through a regex script to determine the presence of any WooCommerce shortcodes, and then make a decision to include or exclude Woo scripts based on the results.

To turn off the WooCommerce script optimization, add the following line to your master.php or custom.php file:

add_filter('thesis_woocommerce_optimized', '__return_false');


thanks, i Awaited update and I’m very interested in WooCommerce

Simplebutcreative Media


It’s been a long while since I’ve used Thesis…Seems like I’ve missed a lot lol

Fathi Arfaoui

What impressed me all the time with your theme framework compared to others is the way you organized the files and the layout. Now, I can see the great improvement with WooCommerce compatibility and it really makes the difference.

rahul roy

thanks for updating…


Thank you Chris! As a long-time Thesis user, ( well, 1.8x) I can really appreciate that the dreaded “Can you do WooCommerce?” can now be answered “Yes. No problem.” ~ still use my go-to development tool and not sacrifice the performance my clients need??? Nice! I’m looking forward to checking it out. “This site rocks the Thesis 2.3 Framework from DIYthemes” is going back up soon : ) Cheers