Checking my Themes Against 10 Criteria Outlined in Yoast.com

Posted by on Jun 10, 2009 in About My Themes, Latest News | 6 comments

I stumbled upon a post on Yoast.com outlining the 10 criteria of a perfect WordPress theme. Without hesitation, I went ahead and check my themes against those criteria eager to see how I score for my themes.

The 10 checks are as follows:

  • Hooks
  • Template files
  • Is your theme widgetized?
  • Does your theme have a search option?
  • Does your theme work in all major browsers?
  • Is the theme’s code valid?
  • Check the outgoing links!
  • Can the theme handle pages?
  • Make sure your theme supports trackbacks
  • How is your theme handling titles?

The following is the report:

1     Hooks

Requirements:

– In header.php, it should have a small piece of PHP code that looks exactly like this wp_head(); or this do_action(‘wp_head’);, usually just before a piece of HTML that looks like this: .

– In footer.php, it should have another small piece of PHP like this wp_footer();, or this do_action(‘wp_footer’);

– In comments.php and/or comments-popup.php, it should have a piece of code like this: ID); ?>, just before the HTML tag.

Result: All my themes contain the code.
2     Template files

Yoast said it is a standard to include all the 9 BASIC files below in a theme to avoid installation problem. Each file represents a standard WordPress feature/structure.

home.php, single.php, page.php, category.php, author.php, date.php, archive.php, search.php, 404.php

Out of the above mentioned files, I only have home.php, single.php, page.php

Does that mean I am missing most of the WordPress features? Not at all. I actually simplified the file structure even more by merging category.php, author.php, date.php, archive.php, search.php, 404.php into one single file, index.php

Result: All my themes contain the standard WordPress features.

3     Is your theme widgetized?

Strictly speaking, a theme without widget is not a WordPress theme.

To determine whether a WordPress theme is widgetized, look for this code in the sidebar.php file:

dynamic_sidebar(”);

.

Result: Needless to say, all my themes are widget ready.
4     Does your theme have a search option?

WordPress search function is quite powerful so there is no reason not to include it by default.

Result: Search option can be found on all my themes.
5     Does your theme work in all major browsers?

Your visitors will get turned off if your blog is not compatible with their browsers. However, it is impossible to make a theme work in ALL browsers. The author advises the users to install a theme which works on IE6, IE7, Firefox and Safari.

Results: Not only do my themes compatible with IE6, IE7, Firefox and Safari, they are compatible with the Opera as well as an increasingly popular Chrome browser.
6     Is the theme code valid?

It is very important for a theme to comply with W3C. A theme with W3C compliant will be crawled by search engines easily and it is more likely to work on several browsers and other display devices like PDA.

However, you can’t find many themes pass this test either because the theme author is more of a designer than a coder or the coder doesn’t bother to take the effort to make it W3C compliant.

To see if a theme pass the test, you can use the XHTML validator and the CSS validator

Result: All my themes pass both the W3C’s XHTML and CSS test.
7     Check the outgoing links!

Normally, the free downloadable themes will have the theme author’s link in the footer. Some will also have the advertiser’s link. You need to check where the external links point to in order to avoid linking to bad neighborhood.

Just like other free themes, I also list my links as well as my advertiser’s links in the footer. However, I am very strict as to whom to accept the advertisement. You can find the policy of my footer link info.

Result: The footer link contain a link to my site. Some have external links which belong to legitimate sites. I will NEVER accept hate, adult and casino related links.
8     Can the theme handle pages?

You can publish the articles in two forms via the “post” or the “page” option. Majority of the themes will add a link from the home page once you publish a post. But quite a number of themes doesn’t add a link from the home page once you publish an article using the “page” option, let alone pages that are a few levels deep.

Result: Go to any of my theme’s demo and you’ll see that the pages’ links with 3 levels deep are listed on the sidebar.
9     Make sure your theme supports trackbacks

With trackbacks, you can notify other non-Wordpress blogs that you’ve linked to them. If you link to other WordPress blogs, they’ll be notified automatically using pingbacks.

To enable trackbacks, you need to add a one-line code to single.php and page.php.

This is the trackbacks code that I used:

<?php trackback_url(); ?>
Result: All my themes are trackbacks ready.
10     How is your theme handling titles?

It is much better to have different titles for each page than having a common one. The common practice is to include one line to the header.php file.

<?php bloginfo(‘name’); ?> <?php wp_title(); ?>

or

<?php wp_title(); ?> <?php bloginfo(‘name’); ?>

The two php code can be found in my header.php file. I even include an additional code to differentiate the titles of the single post from other pages.

<?php bloginfo(‘name’); ?> <?php if ( is_single() ) { ?> &raquo; Blog Archive <?php } ?> <?php wp_title(); ?>
Results: I handle the titles following the same standard with a new twist.

In conclusion, my themes have passed all the items in the checklist!

6 Comments

  1. I download many free themes but half of all are not compatible with ie6. This is a good check list to consider, made easy to me. Thank you!

  2. Hi Brian! You have an excellent blog and your themes are top quality (am impressed)! Would love to know how much would it be to add a 3 column footer into my current theme (it’s mixed up right now and I don’t have the extra time to trouble-shoot etc)?

    The 3 columns should have (from left to right): Newest Comments/Top commenters, Latest tweets, Tweet Roll. And I should be able to use any background image for the 3 columns.

    Let me know – you can tweet me directly too – my nickname is Qutequte

    • Hi Kelly, I am sorry that I don’t provide custom service at the moment because I have yet to find a good coder to help me out 🙁

  3. I am here on your site since a while… and it is rather interesting. I enjoy looking around, and reading your posts.
    The Coffee Desk is one I want to test… it is fun! (Knowing, that I write nearly always on the keyboard, never drink coffee and have got no agenda). http://www.remete.org
    In this 10-list for the recommendations… it is interesting, that the ability to translate the template is not found. As I am Hungarian, and I make my sites often in 3 languages (English, French and Hungarian)… to translate the theme is important, too.

    How and what do you think about your templates being translated?

    Friendly greetings

    Tamas

    • Thanks for the suggestion. In fact, we are planning to add a few features into all of our themes. That includes translation to different languages.

  4. You have some beautiful themes. Drop down menus for pages and categories would be a defining separator.

    I believe all themes should have such capability now.

    Check out Arjuna-x on WordPress. I believe it is the reason they have over 80,000 downloads. It is one of the only themes that accomplishes the task with a very simple but capable options page.

Leave a Reply to kelly Cancel reply

Your email address will not be published. Required fields are marked *

Experience ThemeMask

View a mask:

Get the masks now!


Theme runs on
Elegantthemes Chameleon