[theme-reviewers] Common Things Overlooked in Theme Reviews

Philip M. Hofer (Frumph) philip at frumph.net
Wed Sep 4 23:09:56 UTC 2013


I thought that was your intention at first but there have been ‘many’ requirements popping up that were.. uhm, arguable? so I wanted to make sure ;)

- Phil


From: Chip Bennett 
Sent: Wednesday, September 04, 2013 3:57 PM
To: Discussion list for WordPress theme reviewers. 
Subject: Re: [theme-reviewers] Common Things Overlooked in Theme Reviews

That was probably poorly worded; blame it on being hopped up on NSAIDs and putting in far too many hours of work. :) 

I don't mean to imply that Themes are *required* to include any particular template file (other than index.php, of course). What I intended to say was that, if a Theme provides a template file for a particular context, then it must use the appropriate template file as per the Template Hierarchy. So, if a Theme includes a template file that is intended for the site front page, then that template file must be named "front-page.php" - and if a Theme includes a template file that is intended for the blog posts index, then that template file must be named "home.php".



On Wed, Sep 4, 2013 at 6:47 PM, Philip M. Hofer (Frumph) <philip at frumph.net> wrote:

  “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.”

  _________________________________________________

  I believe you’re thinking index.php as a requirement 

  front-page.php in hierarchy is an override to the index.php, i.e. takes precedence if used
  http://codex.wordpress.org/Template_Hierarchy
  ref: wp-includes/template-loader.php, wp-includes/template.php  get_front_page_template()  get_home_template()
  if the $wp_query->has set
  is_front_page() calls front-page.php 
  is_home() calls home.php and index.php
  index.php’s loop needs to handle them both for display, if has posts –> loop display, front-page.php is an override to both
  Looks for front-page.php –> then
  Looks for home.php, if not find looks for index.php  if neither the front-page.php nor home.php there MUST be /required/ an index.php
  hence the index.php should be the requirement since if all 3 don’t exist, it must minimally have at least index.php
  From: Zulfikar Nore 
  Sent: Wednesday, September 04, 2013 3:15 PM
  To: Theme Reviewers 
  Subject: Re: [theme-reviewers] Common Things Overlooked in Theme Reviews

  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 :)

  Zul


------------------------------------------------------------------------------
  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: 
    a.. No "Mobile, Bootstrap Portfolio" types please.

    b.. 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 Theme
  meaning 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 :)


  Thanks,
  Emil



  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( /* ... */ );

      or 

      $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!

    Chip

    _______________________________________________
    theme-reviewers mailing list
    theme-reviewers at lists.wordpress.org
    http://lists.wordpress.org/mailman/listinfo/theme-reviewers




  _______________________________________________ theme-reviewers mailing list theme-reviewers at lists.wordpress.org http://lists.wordpress.org/mailman/listinfo/theme-reviewers

------------------------------------------------------------------------------

  _______________________________________________
  theme-reviewers mailing list
  theme-reviewers at lists.wordpress.org
  http://lists.wordpress.org/mailman/listinfo/theme-reviewers


  _______________________________________________
  theme-reviewers mailing list
  theme-reviewers at lists.wordpress.org
  http://lists.wordpress.org/mailman/listinfo/theme-reviewers





--------------------------------------------------------------------------------
_______________________________________________
theme-reviewers mailing list
theme-reviewers at lists.wordpress.org
http://lists.wordpress.org/mailman/listinfo/theme-reviewers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.wordpress.org/pipermail/theme-reviewers/attachments/20130904/8f519374/attachment-0001.html>


More information about the theme-reviewers mailing list