[theme-reviewers] Common Things Overlooked in Theme Reviews

Chip Bennett chip at chipbennett.net
Wed Sep 4 22:57:35 UTC 2013


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 <zulfikarnore at live.com>
> *Sent:* Wednesday, September 04, 2013 3:15 PM
> *To:* Theme Reviewers <theme-reviewers at lists.wordpress.org>
> *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<http://codex.wordpress.org/Theme_Review#Licensing.2C_Theme_Name.2C_Credit_Links.2C_Up-Sell_Themes:>:
>
>
>    - 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 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.wordpress.org/pipermail/theme-reviewers/attachments/20130904/5fa6ff6d/attachment.html>


More information about the theme-reviewers mailing list