As a web development company, we build a lot of sites. Many of the sites are true custom development jobs, starting from TwentyTen or Cutline for the base template files. That’s the right way to build a site, as you’ll quickly see.
But often our clients can’t afford custom development. So we bought developer licenses to WooThemes.com and ElegantThemes.com and thought we were set. While Woo are as a group not very refined and seem to be getting less so every month, ElegantThemes offers many really well-designed themes.
All these paid templates with extensive configuration dialogs (WooThemes, Elegant Themes etc.) usually look nice and are a great alternative if you have little money to spend, little or no template programming skills and you want to be able to tweak how your site looks like.
Not so fast.
Not only do the handy internal configuration tools for “quick customization” give clients every opportunity to break their own sites, they carry a lot of overhead. Your CSS files will be bloated as you are always offering the code for two column, three column and six or seven different colours.
But there’s a limit all this configuration options have and you can’t get beyond that limit without changing the core files of the template, so if you want to do some serious customization, and not just change the colors, there’s nothing good about the configuration screens.
There’s a lot of talk about how professional paid themes are in comparison to free themes. It’s not what we’ve found. Cutline, Twenty Ten and Oulipo are all much better coded than any theme we’ve found at WooThemes or EleganThemes.com. You can’t just choose any free theme but a good one looks to be better than a paid theme. There’s a couple of reasons. First, a good free theme is not trying to be everything to everyone so most don’t suffer featuritis. Second, a free theme is often coded at leisure and only released when it’s ready. Paid themes are a commercial product and the more themes a developer can cram out quickly, the more he earns.
Featuritis often means that extra functionality is jammed into the functions file which should be taken care of via plugins. If you add extra functionality via plugins, it’s easy to switch themes. If all your custom functionality is in the theme, your website is a prisoner in a pretty gilded cage. We can help you move out, but it’s a task.
Here are some concrete case studies of our latest misadventures with paid themes. Read and weep for all the unfortunate site owners who are enduring slow site loads and crashing shared hosting the world over with commercial themes.
Daily Edition by WooThemes – Premium WordPress Templates
When building a site or a plugin, we always check the number of database queries made when displaying the index page, archive page, single post and so on. That helps us discover any bad (by “bad’ I mean not necessary) database queries and bad code inside the plugins or templates before a database server goes down because it’s overloaded – nothing special on shared hosting environments, it even happens for well optimized and cached sites which have a bad luck of being too popular.
To do this kind of audits use WPDB Profiling plugin for WordPress. It shows you all sorts of information in the site footer and you can turn it on and off as you like.
We built a website with Daily Edition template and when it was all ready to go live, we discovered that it has 85 queries on every page load! It took us a while to figure out where the problem is and it still sounds a bit weird: the number of queries dropped to around 65 after we turned on the “Hide SEO custom fields” option:
Weird Daily Edition Options
How can displaying the SEO custom fields on post edit screens take extra database queries? We use FV All in One SEO Pack plugin for SEO, so we don’t have these problems. But who would guess that turning off unused features can speed up your website so much?
The updated version, which was released shortly after we found these issues has around 60 queries, so this problem appears to be fixed. However, there are more issues. Let’s go deeper into PHP here:
The Tabbed widget of Daily Edition is taking too much queries. For example, here’s the original popular posts code:
$popularposts = "SELECT ID,post_title FROM {$wpdb->prefix}posts WHERE post_status = 'publish' AND post_type = 'post' ORDER BY comment_count DESC LIMIT 0,".$pop_posts; $posts = $wpdb->get_results($popularposts); if($posts){ foreach($posts as $post){ $post_title = stripslashes($post->post_title); $guid = get_permalink($post->ID); ... (display code here) ... woo_get_image('tiny',35,35,'thumbnail',90,$post->ID,'src',1,0,'','',true,false,false); ... } }
That code takes 2 addition database queries for each related post!
Here’s how we rewrite the function to avoid that:
- use the WordPress function to get the posts – don’t use direct SQL commands on wpdb object if possible
- use global $post
global $post; $tmp_post = $post; $myposts = get_posts('showposts='.$pop_posts.'&orderby=comment_count&order=desc'); foreach($myposts as $post) { ... (display code here) ... woo_get_image('image',35,35,'thumbnail',90,$post->ID,'src',1,0,'','',true,false,false); ... } $post = $tmp_post;
This code takes only 1 query for 1 post and if some of the posts already appear on the page, they are not queried again, thanks to some internal WP caching mechanism. Notice that we store the original $post object in a variable and then put it back.
Going through various templates, you will be probably able to find more glitches like this one.
Delicate News (version 2.0) by Elegant Themes
The template looks great. We do some modifications based on client’s requests and everything is fine. It runs on development site with a real set of data copied from the live site, so we should have a good idea about it’s performance. The number of database queries is perfectly normal this time.
Delicate News demo template
The problem appears as soon as we take the new site live. There is some inefficient code, as the site runs out of PHP memory. So we quickly troubleshoot the issue, until we found that it’s in the template:
Delicate News template tries to use a better count of comments posted to an article than WordPress does and it’s running that algorithm each time a post is displayed. On the index page, we display around 10 posts plus this site has a lot of comments – put these two things together and your site goes down like a rock.
Normally WordPress counts number of comments for a post only when a new comment is posted – check out wp_update_comment_count_now in wp-includes/comment.php. Then it stores that in database (wp_posts table, comment_count field). It even provides a plugin hook called wp_update_comment_count.
Here’s where the dangerous function is hooking to the standard WordPress template functions:
Line 32 in DelicateNews/includes/functions/comments.php:
if( phpversion() >= '4.4' ) add_filter('get_comments_number', 'comment_count', 0);
Comment out that line and your site will run again:
//if( phpversion() >= '4.4' ) add_filter('get_comments_number', 'comment_count', 0);
So even if you check the number of queries, you are not completely safe. An option to disable a function like this one would be a nice addition to the template configuration screen, or better – a complete rewrite of that function. This is an example of a extra template functionality which does not work as well, at least not in all cases.
We are not saying, that these templates are bad and you should not use them, but if you do, you better check if they are alright, before you use them on some project, as you can’t be really 100% sure they work flawlessly in all situations – specially after some tweaks.
Checklist for template checks & optimization
Here are some general steps we follow
- Use WPDB Profiling plugin for WordPress,
- Check out the output of WPDB Profiling and look what takes extra queries – you should be able to see plugin functions
- Make sure you test the template as both logged and non-logged in (with no cache, make sure you enable WPDB Profiling for non-admin users when doing this)
Check following items
- Index page
- Archive page
- Single post
- Single post with a lot of comments
- Page
To isolate the problematic parts you can
- Disable plugins
- Disable sidebar widgets
- Disable whole sidebar
- Disable any unusual part of template (front page posts slider, advanced navigation, …)
Excerpt from WPDB profiling analysis. Going through this list can save you a lot of trouble.
Here’s a sample pingdom.com site load time report on two minimalist sites, one using a non-repaired paid theme, one using a custom theme built on cutline. One takes 20 seconds to load, the other 4 seconds to load, both on clean fast servers. Guess which one is which.
wordpress cutline custom theme load times
wordpress paid themes load time
Recommendation
Where possible avoid paid themes at this point. They are all top-heavy. You are much safer starting with Twenty Ten or Cutline. If you must use one, hire a good developer to clean out the theme before going live.
Martin Viceník
Martin graduated as an engineer in Computer Science from Slovak Technical University in Bratislava. He grew up in Liptovský Mikuláš in northern Slovakia next to the beautiful Tatra mountains. He is the developer behind our FV Player.
Great post. I’m building an e-commerce site for a customer and planned to use WPMU DEV’s MarketPress plugin. Can you recommend any good themes for this purpose? Also, can you give me your 2 cents on WPMU DEV themes and PageLine themes? Thanks.
i tried some commercial themes, since they’re had a lot of options for customization, they over and over do get_option() function (which mean do query to wp_options table database) in only one page…
but there’s some smart way on commercial theme (in my case from pandathemes ), they put all the options in an array, and save it in one wp option key, so they only call get_option() function once…, and get the options from the array.
Interesting post. However I do not really understand why you were looking into Woothemes and Elegant themes in the first place: you are obviously looking for a theme framework, with some available child themes, rather than complete themes such as those sold by Elegant Themes.
I believe in such cases you should develop your own theme framework, or start from something like Genesis, Headway, Hybrid, or Thematic. Thus you have a strong base to start from, with numerous hooks and possibilities, SEO-ready (no use for SEO plugins, or that integrate perfectly with existing ones). Actually, I thought the Woo-Framework was offering exactly that kind of services.
Twentyten is a nice theme, I absolutely agree, but if you end up customizing and making some changes to one single theme for each client, I would really suggest you create your own framework. It will make your work easier, better, and faster on the long run.
Great report Martin!
Theme developers (especially the so-called “frameworks”) tend to trade optimization for ease-of-customization. Much of this involves tens or even hundreds of extra conditionals, queries, etc.
Instead of evolving to cleaner and quicker code, it becomes fat, slow and ugly.
I’m pleased to say that as a premium theme developer (check my website link above) I am very cautious when it comes to this sort of thing. I won’t say my themes are perfect, and I totally agree that with flexibility there is a certain amount of compromise required, however I am pretty sure that none of my themes do any of the things mentioned above. That said, this has prompted me to go through them again to make sure they aren’t doing anything silly.
Martin – If you have any more tips, or want to try my theme framework Elemental, then drop me a line and I’ll give you an account so you can try it out.
Thanks for shedding some light on this and bringing this to attention. I have looked at a fair amount of various ‘premium’ themes as well and was not pleased at all.
Lots of the shiny stuff was integrated in horrible ways, also due to the obvious limitations of WordPress (which is NOT a CMS).
The custom admin panels look like cockpits of spaceships and are just overwhelming.
And now that I see someone analyzing the SQL overhead, it is even worse.
I guess there are definitely some themes which enable non-designers to get quite close to what they have in mind but overall my impression was that most of the themes are too ‘massive’, too stuffed and put together by hackers.
And based on the code examples in this post, it doesn’t really make me want to look under the hood of the available theme frameworks either.
Hello nggune,
most of the options in the options table have autoload set to ‘yes’. Loading these options won’t cause extra db queries, as they are loaded together with core WordPress.
I guess one of the WooThemes had that kind of problem, as it took extra db queries until I turned off the SEO functions (which had a lot of options).
Thanks, Martin
If you want to start clean, choose the sandbox theme at plaintxt.org. You can’t get more barebones than that.
Thank you for the article, I found it very interesting reading. As I own a number of premium themes and frameworks, I decided to do some basic testing myself using your recommended plugin WPDB Profiling.
Here are my unscientific test results.
The test were run a newly setup clean Linux server running PHP 5.1.6, MySQL 5.0.77 WordPress 3.1.1 with the WPDB plugin active. WP_Cache Status: Enabled! I imported content from a site with loads of pages and images. I ran the test on the homepage and then on a page with 46 comments, you can see the results of both page below:
Twenty Ten 1.2 by the WordPress team
Time: 10 database queries run in 0.0085268020629883 sec. Time: 15 database queries run in 0.010899305343628 sec.Thesis 1.8 by Chris Pearson
Time: 11 database queries run in 0.0054011344909668 sec. Time: 12 database queries run in 0.0048646926879883 sec.Classic 1.6 by Dave Shea
Time: 13 database queries run in 0.010859489440918 sec. Time: 18 database queries run in 0.011161327362061 sec.Headway 2.0.8 by Clay Griffiths // Headway Themes
Time: 14 database queries run in 0.011230945587158 sec. Time: 18 database queries run in 0.012529373168945 sec.Default 1.7.2 by Michael Heilemann
Time: 17 database queries run in 0.011600971221924 sec. Time: 22 database queries run in 0.013220071792603 sec.Thematic 0.9.7.7 by Ian Stewart & Chris Goßmann
Time: 17 database queries run in 0.014473438262939 sec. Time: 22 database queries run in 0.016648054122925 sec.F8 Lite 4.2.1 by Thad Allender
Time: 22 database queries run in 0.0096426010131836 sec. Time: 16 database queries run in 0.0078961849212646 sec.Delicate News 2.2 by Elegant Themes
Time: 23 database queries run in 0.019034147262573 sec. Time: 69 database queries run in 0.02458930015564 sec.Photobox 1.0.6 by Themify
Time: 30 database queries run in 0.012521505355835 sec. Time: 54 database queries run in 0.15121483802795 sec.Bloggie 1.1.7 by Themify
Time: 34 database queries run in 0.015562057495117 sec. Time: 28 database queries run in 0.014686107635498 sec.Minblr 1.0.3 by Themify
Time: 115 database queries run in 0.052990436553955 sec. Time: 30 database queries run in 0.014171123504639 sec.OverALL WordPress Theme 1.3 by Codestar
Time: 122 database queries run in 0.031898260116577 sec. Time: 99 database queries run in 0.44418334960938 sec.Modularity 2.9.1 by Thad Allender
Time: 244 database queries run in 0.078363656997681 sec. Time: 172 database queries run in 0.044177770614624 sec.What my tests showed that the Thesis 1.8 framework is the fastest by quite a margin, followed by Graph Paper Press f8-lite theme.
I know it’s not a fully scientific test, but I found these results useful. I own all the themes from:
So if there’s a theme from them you would like me to test let me know.
Hi KJ,
Thanks so much for sharing those test results. That’s a very useful test. We plan on doing some server load tests on some of these themes but this is a good start for a commercial theme quality check.
Your tests indicate to me that our faith in Twenty Ten as a starting point for developing a custom site is well-placed. It also shows that Thesis 1.8 is not so bad (we don’t like how Thesis tries to hijack plugin functions and force you to stay on Thesis: Thesis is Microsoft’s “embrace, extend, extinguish” philosophy practiced on WordPress) in performance terms as we thought.
Superb work. I’d love to see a few more popular Elegant Themes tested. We could send you over some WooThemes as well for testing.
Hi Alec,
I’ll add some more Elegant Themes, I’ll eventually get round to testing all of them, but let me know if you have any particular ones you would like me to test first?
Please feel free to send any other Themes you would like me to test.
The results below are based on my 2nd test, homepage then a page with 46 comments:
BusinessCard 2.0 by Elegant Themes
Time: 15 database queries run in 0.013096570968628 sec. Time: 15 database queries run in 0.021771192550659 sec.13floor 1.7 by Elegant Themes
Time: 17 database queries run in 0.015060424804688 sec. Time: 69 database queries run in 0.025210380554199 sec.AskIt 1.5 by Elegant Themes
Time: 16 database queries run in 0.015112638473511 sec. Time: 175 database queries run in 0.052090883255005 sec.Basic 3.9 by Elegant Themes
Time: 22 database queries run in 0.016218423843384 sec. Time: 66 database queries run in 0.023319959640503 sec.Bluemist 2.8 by Elegant WordPress Theme
Time: 23 database queries run in 0.023586988449097 sec. Time: 53 database queries run in 0.028160095214844 sec.Bold 4.1 by Elegant Themes
Time: 23 database queries run in 0.02043080329895 sec. Time: 68 database queries run in 0.023920297622681 sec.Bluesky 2.6 by Elegant WordPress Theme
Time: 28 database queries run in 0.025244951248169 sec. Time: 50 database queries run in 0.026688098907471 sec.ArtSee 2.5 by Elegant Themes
Time: 31 database queries run in 0.027701139450073 sec. Time: 73 database queries run in 0.033818006515503 sec.I’m curious to see how PageLines Platform Pro performs.
Your tests on Elegant Themes are very interesting KJ. Basically, Elegant Themes are all over the map in terms of quality of coding. It’s a pity as they have some of the best looking themes out there.
But they have some real performance troubled nags in the stable. And that’s been our real world experience: that’s a lot of trouble to get an Elegant Theme up to speed. Unfortunately WooThemes were the same thing.
Would it be possible for you to test a bunch of the top free frameworks on your testbed for comparison: Hybrid, Thematic, Carrington, Whiteboard and WP Framework.
Thanks for all your help with theme testing KJ.
Hi Chris, Plaintxt Sandbox Theme didn’t make the top 5 of fastest (out of the box) Themes/Frameworks. Check my site for full results.
Hi RTM, Sorry don’t have PageLines Platform Pro so can’t test it, but happy to do so if I’m sent a copy.
Hi Alec, I’ve already tested Thematic and I’ll run same tests on those other free frameworks you have listed.
Just thought I’d add that the tests are on OLD versions of WooThemes. The screenshots conveniently cut the version out…
Slightly off-topic but why am I getting 10 e-mails (because of subscribing to this) when there is only one new comment?
Hi Jack,
We were using Woo’s Delicate News 2. This was not a new release so I’m not sure how relevant exact version number is.
Hi Aleks, Serge & Jane,
We’ve been trying different Subscribe to Comments plugins over the last four or five days (what we thought was an improvement was in fact not, better we find out on our site than our clients on theirs). In the end, we decided to stay on Gurken Subscribe to Comments and add some improvements instead of switching plugins.
If you are still getting multiple emails, please let us know right away. It shouldn’t be happening at this point.
Making the web work for you, Alec
Anyone who is wondering about Theme Frameworks should check these numbers out. All of these theme frameworks are free: Hybrid, Thematic, Carrington, Whiteboard and WP Framework. These are the results on a WP site full of data.
Hybrid 0.9 by Justin Tadlock
Time: 9 database queries run in 0.0053858757019043 sec. Time: 13 database queries run in 0.0061540603637695 sec.Twenty Ten 1.2 by the WordPress team
Time: 10 database queries run in 0.0085268020629883 sec. Time: 15 database queries run in 0.010899305343628 sec.Thematic 0.9.7.7 by Ian Stewart & Chris Goßmann
Time: 17 database queries run in 0.014473438262939 sec. Time: 22 database queries run in 0.016648054122925 sec.Carrington Blog 2.2 by Crowd Favorite
Time: 23 database queries run in 0.012436866760254 sec. Time: 27 database queries run in 0.01320743560791 sec.WP Framework 0.2.4.10 by Ptah Dunbar
Time: 13 database queries run in 0.012094497680664 sec. Time: 64 database queries run in 0.050756216049194 sec.Whiteboard 3.1 by Bold Perspective
Time: 26 database queries run in 0.014381170272827 sec. Time: 62 database queries run in 0.020661115646362 sec.I am unsurprised to see Justin Tadlock, Twenty Ten and Ian Stewart win the horse race. I am surprised to see how poorly a framework like Whiteboard did. Having seen these numbers, I’m even less likely to use a framework besides Twenty Ten. We might give Justin’s Hybrid a try to see how we like it.
It’s great to know one is building on a solid foundation.
Hello Martin.
I enjoyed reading the post. I did similar check for ThemeForest themes few moth ago and results were really bad, most of themes are poorly coded and provide a lot extra SQL queries
Alec and KJ, thanks much for the work and for sharing these numbers! Glad to see Thesis isn’t all bad. :) And I’ve been thinking about looking at Hybrid, so its performance is also good news. This past month I’ve been building my own barebones framework starting with Starkers (which is based on Twenty Ten), plus basic typography and some hooks a la Thesis. I will be using it as a starting point for when I collaborate with a graphic designer. But it’s also nice to have a few trusted free or commercial themes for clients who can’t afford a fully custom design.
img651.imageshack.us/img651/7399/screenshot20110413at332.png
img703.imageshack.us/img703/7399/screenshot20110413at332.png
How is this?
Elegant Themes Puretype – Optimized
Total homepage is 20k… pingdom loads the whole thing in 1.5 sec.
Pagespeed 93%, yslow 91%.
Outstanding post. I didn’t realize the true fact: functionality should be implemented with plugins instead vast amount of code inside functions.php and includes. I’m modifying a xxxx premium theme. The functionality is awesome, but I’m prisoner in this design forever. A lot of Custom types and code were included so a change to another theme is not an option.
Hi Fernando,
If it’s a pro site, then a good developer who specialises in migrations (including our team) could help move you into another theme pretty quickly. Our SEO plugin for example will help you leave three or four premium theme types including Thesis. If you do use a premium theme, I recommend turning off as many advanced features as possible and use plugins instead from the beginning.
Ideally a premium theme should be about clean and fast code and great design and not silly little widgets and doodads better done in real widgets and real plugins.
Alec – very helpful post to show clients the difference between the various CMS options. I’ve been using Headwaythemes.com on one of my simpler sites. One of the things I like about it – is they are committed to building the theme so that changes made via their visual editor, don’t break when you either upgrade/update wordpress or their theme. No need to FTP your files after an auto upgrade/update – which as you noted seems to happen very often. It’s the only theme I’ve run into that does this. That is a big change from Thesis. I’m not sure how Studio Press themes work (the others I’ve had some experience with). For solopreneurs and small businesses, a theme with basic design flexibility and easy upgrades/updates – makes a lot of sense.
I’m also wondering how clean the back end code is on Headway.
Do you have any opinion on the Headway theme? Is it okay, but a lot of smoke and mirrors & a vocal “I love it” community like Thesis; is it moving in the right direction; or the coolest thing since sliced bread. Or have you not looked a it, checked it out etc –
or would you rather not comment.
I understand either way. Thanks for your time and a great post.
Hi Cathy,
Glad you found the article helpful.
Headway does relatively well in the database sweepstakes, as you can see above with just 18 queries when loaded with content.
If you are going to use a paid framework, Headway looks like a reasonably decent place to start.
Making the web work for you, Alec
I prefer the older version of Twenty Ten which is Twenty Ten 1.1 because it loads faster than version 1.2. Version 1.2 supports post format which makes this version more slower than version 1.1.
Awesome post! Glad I stumbled on it in my search for theme options, since I am looking for a theme for myself.
The Genesis Framework was mentioned previously, but got no response. Maybe you would rather not comment, and I understand. My budget is limited, as is my design experience with wordpress. I need a flexible theme, most of which would be functionally answered by the Genesis Framework with the child themes, but I also care a lot about quality and performance.
Do you have a take on that? If not, that is cool too!
most fo the sites/blogs I built use wordpress and 2+ years ago I got the revolution theme package which is now the genesis/studio press range. Great bunch of themes and the support forum is pretty quick to help. Never tried Woo – only looked at them and wasn’t that impressed for the price.
Thank you for referring the extension ” WPDB Profiling plugin for WordPress” it will help in analyzing wordpress sites.
Are there any other tools or plugins which you would suggest to WordPress developers?
I love some of their themes, but I being locked to one framework or having to re-customize so much when redesigning is not fun
I just tested a PlatformPro site:
the index page had 89 queries in 0.131466150284 seconds
Thank you for the thorough analysis! I was on the fence about services like Elegant/Woo themes and this post addressed all the major concerns I had.
This answers some of my own questions about my own 2010 theme and gives me somewhere useful to begin from. Thanks.
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1449
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1449
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1450
Can you clarify exactly what test data set was used to produced those results? If so would be really useful to have it or how to recreate it so we could test other paid themes and compare.
PS I am most intereted to see results for toolbox wordpress.org/extend/themes/toolbox
Hi Giles!
I have tried two Elegant Themes templates now and tried to build out my site. One totally crashed my site within 24 hours, I mean, I couldn’t do anything. I changed the php.ini file, which worked. I then changed templates because I couldn’t tweak the first one enough, and after more days of development, now i can’t upload again. It might be my host (GoDaddy), but they haven’t been good at figuring out the issue so far. I am doing a portfolio site and have a lot (maybe 50) images, which doesn’t sound like a lot, but I now have about 10 uploaded and can’t upload any more. I think it must be the templates. In tandem, I have uploaded about 20 of these images on wordpress.com to a generic template, and no issues.
P.s. to my comment above: it seemed the problem was totally with changes on my host and not with Elegant Templates. Moderator, you can delete both these posts if you wish. I do not want to give Elegant Templates a bad rap if they don’t deserve it, thanks. gary
Hi Gary,
I thought the issue was with your host. Thanks for reporting back. I’ll leave your comments to remind people to check with their host as well if they are having issues.
Making the web work for you, Alec
Many thank! Now I know why my blog build with woo themes website is so slow and why to choose for free templates in stead. Great info!
Hello, Alec. Thanks so much for this great article. I would love to learn how to code WordPress well, the ways you describe here. I have a few WordPress books & am learning but they disagree sometimes. What do you think of Digging Into WordPress by Chris Coyier? Any books you recommend? Feel free to link to your account on Amazon, etc. so you can get paid for your advice! Thank you.
Hi Dawn,
Thanks for stopping by.
I’d recommend using the Codex intensively. I would avoid commercial themes as above and modify TwentyTen or TwentyEleven.
Keep it simple and focus on the basics of html and CSS. Work with the code and it will come.
As WordPress and even the web is a moving target, I’m not sure any book will remain valid for very long. There’s no point in building a library. If you need one good book to get oriented, after that the additional info you should seek on the web.
As you are no doubt aware, there are sites like AListApart.com which cover the fundamentals of advanced web design and coding.
Thanks for this analysis. I am not technically-minded but I am artistic. So when I started using WordPress, I was drawn to “feature rich” themes, which enabled me to create visually beautiful sites without knowing how to code or modify anything.
I started with free themes like Atahualpa but even I noticed they were slow – it was possibly more obvious to me because in those days, I was using a lot of graphics too. I then discovered the Page Speed plugin and started using it when trialling new themes. I joined Elegant Themes and drooled over their designs, but couldn’t find a single theme that scored over 75 (now I know why!).
I’ve now given up and design all my own themes with Artisteer. I know there is redundant code in there and people complain the program creates slow websites, but all my Artisteer themes score much better on Page Speed than the Elegant themes.
I was thinking of switching to Woo Themes – but now, I’ll think again!
Excellent post! A client of mine had bought a year unlimited access to all themes at such a commercial site.
Turned out that all custom stuff was hardcoded, so it took me more time to make the theme functional then to build a new one from scratch.
So .. watch out! You get what you pay for.
Great article … maybe the best of its type out there. I, too, would be interested in seeing how the StudioPress/ Genesis framework tests out. I may soon replicate a site I have onto the Genesis Prose (or Minimalist … we’ll see) child theme, and could conduct tests then.
But if one of you whiz-bang testers could see how Genesis does, that’d be awesome. One of their claims to fame is CLEAN CODE.
Thanks for this review. I have been using Hybrid for years doing custom coding and was almost wooed by the slick designs at Woo Themes.
The only other option I was considering that I don’t see here is Genesis and their associated child themes from StudioPress. Have you tested these?
Thanks, Matt
I recently purchase a WooTheme and I’m quite disappointed of the page load speed. Its not only hard to use on the admin side – it is also really slow for the user. Not recommendable from my point of view – maybe its my servers fault though.
While I agree that Woothemes seem to have a longer load time, I find their interface and abundance of video tutorials to outweigh that disadvantage. I am VERY disappointed with the lack of tutorials for Genesis, and also with their clunky interface. I hope they can clean this up.
The best of both worlds would be the usability and flexibility of WooThemes with the clean code of Genesis.
Hi Alec,
This certainly is an inmformative article, which I have referred to numerous times. I certainly can see how Twenty Ten, Twenty Eleven, Cutline, and Hybrid are great starting point if one is making an informational website, but what about an e-commerce site? Do you have any recommendations for that purpose?
And are you going to publish the test results you mentioned in November, in post #40?
Thanks, Nicky
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1449
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1449
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1450
Has anyone turned off dashboard options as a way to prevent WP site mishaps? And does this tactic help with performance?
This is a relevant article I found: sitepoint.com/wordpress-easy-administration-plugin-3/#.T-3CSY7GTXE
We do remove latest comments from dashboards for performance reasons.
Yes, you’re right we still owe some test results. We’ll try and get them done soon. We are just so overbooked with work and keeping our own plugins running smoothly.
How about swift theme? Does anyone have experience with this theme. How does swift compare to twenty ten, cutline and hybrid in terms of performance?. speed, db queries, etc…
i’m searching a fast loading theme to start my wordpress site.
Twenty ten cutline hybrid
They all seem solid alternatives to choose from. But isn’t swift the fastest theme for wordpress from what i’ve heard ??. How come nobody has mention it?
Thanks for great discussion. I enjoy coding from scratch, but in working for most of my clients they really want a wordpress framework site with some support. I have them use wordpress managed hosting (currently this small, cheap service tadpole.cc has been good) and Genesis/responsive them for small-med sized org like Agency. Would you be open to testing a theme/framework (we’d mail our legally purchased copy) to test for $25? I’d love to know how Agency measures up.
I’d love to get some feedback on the Swift theme too. Its whole marketing is based on the fact that it’s the fastest theme on the market.
I tried it on one of my sites. It did seem very fast in its basic form, but by the time I’d added a few plugins, it was no faster than my other themes (as far as I could see).
This was a very interesting article for me to find. I’m not a coder, just an average WordPress user and don’t have a large budget for hiring coders (some, but not large)I was all set to use WooTheme’s Canvas or Pagelines. This has me re-considering. For the average non-coding user, it’s a hard decision. I want more design customization and the premium themes with that are very compelling. It’s very useful to learn that it’s best to use plug-ins to customize. Would be helpful to know of all the frameworks out there which is the lesser of all evils. Thesis, Genesis, Catalyst. etc.
Thanks for the deep analysis. I really appreciate that. You’ve saved me from a few things, not least of which is losing a few dollars.
I checked out WPDB but it looks like it has’nt been updated in two years. Plugins that are not kept current when WP has changed always scare me. Would you install a plugin that has not been amended for years? Maybe I’m just being paranoid.
@kingstonkennedy
interesting post… I was going to buy a wootheme, but then I’ve read this post, so I’m doubting my decision once again. the main reason I wanted to buy a paid theme, is that I wanted a faster theme. I had a free theme for quite a while, and i’m sick and tired that it takes forever to load. I’m using a shared hosting. would turning into a dedicated server help more than a paid theme ??? I’m really very confused !
Two themes that I’d be interested in seeing reports on:
Solostreams wp-clear: seems to be pretty fast and is very customizable.
MySiteMyWay.com’s DejaVu (or any of their themes) – Just learned about these themes and they have as many (or more) options than almost any other theme I’ve seen. Very sell designed, but my guess is that they take a hit on loading times.
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1449
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1449
Warning: Undefined array key 1 in /srv/users/fvision-staging/apps/staging-foliovision/public/site/wp-content/plugins/thoughtful-comments/fv-thoughtful-comments.php on line 1450
@Elyes, there are plenty of free themes which are fast. It’s just a question of finding one. This article recommends the Hybrid theme, which you’ll find here: http://themehybrid.com
You have to join their club ($29) to get support, but it’s well worth it.
There is another theme designer called Hybrid which sells a paid theme, it’s different.
I’m new to WP, but I have developed in HTML for 7 years. I know CSS3. No php experience. I made an error when I bought Woo Themes Resort then Canvas themes. They both have crashed more than once, and the support was cryptic and infrequent.
I was looking for an easy way to dazzle clients, offer CMS and I hoped E-commerce tht was well styled and professional.
I’m going to go back to 2012. This decision cost me $140.00 in themes plus Woo’s dev club $125.00 I think then $25.00 /month after that. I’ve lost about 35 hours in time.
Heads up.
Rob Wallace – I have used Woo Themes Canvas, and I have had no problems, but the really flexible theme I LOVE to use, that is a one- time fee is StudioPress.com’s Genesis theme Framework, then the Child theme Prose – $84. You can develop sites for others, no developer’s license needed. Prose looks boring when you look at their demo, but once you get into it’s theme design – no coding needed to tweak sites colors, look feel, headers, header sizes. And it’s mobile responsive, and they have pretty good documentation.
Interesting to hear about your experience with Woo themes. I’ve heard that their support has gotten “cryptic” (good word you selected there) since they revamped their support system.
Two theme producers I’ve had good help with are Solostreams.com and MySiteMyWay.com. And both make excellent themes.
Genesis is much a cult as Thesis – would not touch it with a long stick.
Can people really not put together an independent site with quality plugins?
For ready made, we quite like the themes from ThemeKingdoms.com lately.
Here’s a few good examples:
When you use an independent theme, at least your site won’t be starting looking like a me-too framework site.
Really helpful post, thank you! Just wondering if WPDB Profiling is still recommended given it was last update over 2 years ago or is there an alternative plugin that has take over this task?
Thanks
Hello Flick,
WPDB Profiling still works, but it’s annoying that each time you turn it on you have to set the settings again.
We also often change its the query sorting, as sometimes it’s more useful to see the exact order of the queries.
Thanks, Martin
I understand that readymade options within theme options to change colors and other variables can be a problem. But I disabled a lot of them and insteadput custom css code in a field that was meant for it. I have disabled comments etc…
I will now also add a child theme which means that the small graphical changes I make will be untouched by future updates of the theme. I cannot code from scratch myself so that is not an option.
I use elegant themes theme “13floor” and wonder if it really have to be as bad as you write it to be ?
Hi Psychic Warfare,
If you are running any kind of a business site, most commercial themes are that bad. Loading time is paramount now for both visitors and Google. If it’s just a personal site, by all means. These are quick and easy fixes. Make sure to use Hypercache as it works well with almost all themes straight out of the box. Hypercache will take the situation from disastrous to passable in most cases.
Thanks for introducing Hypercache, Alec. One thing I have been wondering about, as I reread this article, is whether anyone else is actively keeping track of theme quality.
Do you (or does anybody in this thread) have any recommendations?
Hi Nicky,
Thanks for stopping by.
We actually have some theme ratings and they will be published soon. I promise you’ll be surprised by the results. We were.
Great, I can’t wait! Do you have a tentative release date?
Hi Alec, Great post, thank you. I have been looking for the speed comments of so called superb themes from the eyes of an expert. I built my company’s website with a Joomla! theme but it seems very slow. Now, I want to make sure of the performance of the themes before I buy them. I am curious about what you think about Divi 2.0 of ElegantThemes in terms of performance issues. Best regards, Aytac…
I have a question about customizing, which may be Off Topic for this thread. Here it is anyway. I started looking at what you said about TwentyTen and Cutline, and then based on your comment, I visited Themes Kingdom.
I was encouraged about the page builder widget, hoping that it would enable me to make the final pages as close as possible to what I envisioned while designing with Fireworks. What I discovered while reading their documentation — and then the documentation about the widgets — was that the Page Builder widget hasn’t been updated for WordPress 4.1, and that it’s buggy.
Have your investigations included looking at which commercial developers ACTUALLY make their themes highly customizable for LAYOUTS? It seems like everyone pretty much locks users into the theme’s original arrangements.
Is it unrealistic to want a fast theme that genuinely enables positioning that the designer wants?
Hi Nicky,
I’d recommend getting away from page builders. I’d try to find a theme which more or less structurally suits your project.
We’ve not been pleased with the latest developments at Themes Kingdom. Their transition to responsive has been rocky and they’ve succumbed to adding the same bloatware to their themes which destroyed Woo.
Currently we are actively building most of our middle level work on Studiopress. We really like Altitude Pro, Minimum Pro and Ambiance Pro. These themes are elegant and flexible, allowing you to decorate them as you please. There is even a fair amount of scope in changing site structure without page builder overkill.
The real high end we build made to measure on Twenty Eleven, Twenty Thirteen or Twenty Fourteen.