[theme-reviewers] Common Things Overlooked in Theme Reviews

Zulfikar Nore zulfikarnore at live.com
Wed Sep 4 22:15:01 UTC 2013

This is exactly what I just set out to research as I've made some of those mistakes in my reviews.
Thanks for the clarification @Chip and @Emil :)

Date: Wed, 4 Sep 2013 16:21:18 -0500
From: emil at uzelac.me
To: theme-reviewers at lists.wordpress.org
Subject: Re: [theme-reviewers] Common Things Overlooked in Theme Reviews

Hi TR's,
If I may add few things:
Theme Names: 

No "Mobile, Bootstrap Portfolio" types please.
Child Themes need unique names, we cannot use "Twenty Thirteen Child".For some reason we no longer have the guidelines for Child Themes and we need them.

This is something we need to look into soon.
Before we did not allow Child Themes that are pretty much the same as the Parent Thememeaning that author can't just change the background, colors in general, fonts or simply

add post formats, additional languages and pass that as the Child Theme.
Design should be different and we don't care much for extended functionalities :)



On Wed, Sep 4, 2013 at 3:41 PM, Chip Bennett <chip at chipbennett.net> wrote:

Good afternoon, Theme Reviewers!
As I perform the final "QA" audit of approved Themes before pushing them Live, I've noticed several things that come up frequently:

1. <title> tag: the content of the <title> tag must be *only* the call to wp_title() with its parameters. All additional content must be added via `wp_title` filter
2. Document head stylesheet links: all stylesheets, scripts, and stylesheet/script links in the document head and footer must be enqueued, rather than hard-coded. Common culprits are GoogleFont stylesheet links

3. wp_nav_menu(): Themes must use the theme_location parameter, and NOT the menu parameter, in calls to wp_nav_menu(). The theme_location parameter corresponds to the array key used in the register_nav_menu()/register_nav_menus() call. The menu parameter corresponds to the slug for a *user-defined* custom nav menu.

4. Namespacing arguments arrays: Please place arguments arrays directly inside of the function calls to which they apply, or properly namespace the variable used to hold the array:

$args = array( /* ... */ )wp_nav_menu( $args );
Instead do one of the following:
wp_nav_menu( array( /* ... */ );

$themeslug_primary_menu_args = array( /* ... */ )wp_nav_menu( $themeslug_primary_menu_args ;
5. Confusion between the *site front page* and the *blog posts index*: is_front_page() vs is_home(), front-page.php vs home.php (and confusing custom page template names), etc. Themes must use front-page.php for the *site front page*, and that must account for both the blog posts index and a static page as front page.

6. Child Theme Friendliness: be cognizant of the differences between get_template_directory() and get_stylesheet_directory(), and the appropriate uses for each. Any asset that is NOT intended to be overridden in a Child Theme (e.g. Theme options) *must* use get_template_directory().

Thanks, everyone, for all your time and contribution to Theme review!


theme-reviewers mailing list

theme-reviewers at lists.wordpress.org


theme-reviewers mailing list
theme-reviewers at lists.wordpress.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.wordpress.org/pipermail/theme-reviewers/attachments/20130904/4a6633f8/attachment.html>

More information about the theme-reviewers mailing list