Submitting to the WordPress Theme Directory #wpmelb Anthony Hortin @maddisondesigns
Jan 27, 2015
Submitting to theWordPress Theme Directory
#wpmelbAnthony Hortin
@maddisondesigns
What is the Theme Directory?
The Theme Directory is a great place to find free awesome themes.
Each theme has been thoroughly tested by the WordPress Theme Review Team so as to ensure a high level of standard.http://wordpress.org/extend/themes
Theme Review Guidelines
The Theme Review Guidelines are maintained by the Theme Review Team.
It outline standards and practices for WordPress Theme development and design.
Theme Review Guidelines
Code Quality
Themes must not generate any WordPress deprecated-function notices, PHP errors, warnings, or notices, HTML/CSS validation errors, or JavaScript errors.
Theme Review Guidelines
Code Quality
✓ Themes must not use deprecated functions
✓ Themes must not support backward compatibility for more than two prior major WordPress versions
✓ Themes must not have any notices, warnings, or errors when using WP_DEBUG in wp-config.php
✓ Themes must not generate any JavaScript errors
✓ Themes are required to use a ‘theme-slug’ as the textdomain for translation purposes
Theme Review Guidelines
Presentation vs Functionality
Themes must not be used to define the generation of user content, or to define Theme-independent site options or functionality.
Theme Review Guidelines
Presentation vs Functionality
✓ Themes are required to have all public-facing text in English
✓ Theme may optionally incorporate translation/internationalization
✓ Themes are recommended not to implement custom favicon functionality
Theme Review Guidelines
Theme Features
Themes are required to support proper WordPress core implementation of all included features.
Theme Review Guidelines
Theme Features
✓ Theme is required to incorporate the following WordPress core Theme Features:- Automatic Feed Links - Sidebars - Comments
✓ Theme is recommended (but not required) to incorporate the following core features:- Navigation Menus - Post Thumbnails- Custom Headers - Custom Backgrounds- Visual Editor CSS
✓ Theme must not incorporate Admin/feature pointers
Theme Review Guidelines
Template Tags and Hooks
Themes are required to implement WordPress template tags and hooks properly.
Theme Review Guidelines
Template Tags and Hooks
✓ Certain template tags and hooks are required to be included, such as:- wp_title() - wp_head() - wp_footer()
✓ Standard template files are required to be called correctly, such as:- get_header() - get_footer() - get_template_part()
✓ Themes are required to correctly enqueue all stylesheets and scripts:- wp_enqueue_style() - wp_enqueue_script()
Theme Review Guidelines
WordPress-Generated CSS Classes
Themes are required to support WordPress-generated CSS classes.
Theme Review Guidelines
WordPress-Generated CSS Classes
✓ Themes are required to support certain css classes, such as:- .aligncenter - .alignleft - .alignright- .wp-caption - .wp-caption-text - .gallery-caption- .sticky - .bypostauthor
Theme Review Guidelines
Theme Template Files
Themes are required to utilise Theme template files properly.
Theme Review Guidelines
Theme Template Files
✓ Theme is required to include, at a minimum:- index.php - comments.php - style.css
✓ Theme is recommended to include:- 404.php - archive.php - page.php - search.php- single.php - header.php - footer.php - sidebar.php
✓ Theme thumbnail (screenshot.png) is recommended to be 600 x 450px
Theme Review Guidelines
Security and Privacy
Themes are required to implement Theme settings properly, to ensure proper data security, and to ensure end user privacy.
Theme Review Guidelines
Security and Privacy
✓ Themes are required to prefix all options, custom functions, custom variables, and custom constants with theme-slug (or appropriate variant).
✓ Themes are required to validate and sanitize all untrusted data
✓ Themes must not "phone home" without informed user consent
Theme Review Guidelines
Licensing
Themes are required to be licensed fully under a GPL-compatible license.
Theme Review Guidelines
Licensing
✓ Themes are required to be 100% GPL-licensed, or use a GPL-compatible license. This includes all PHP, HTML, CSS, images, fonts, icons, and everything else. All of the theme must be GPL-compatible.
✓ Themes are required to declare their license explicitly
✓ Themes must not clone the design of a past or present web site.
Theme Review Guidelines
Theme Name
Themes are required to use appropriate Theme Names.
Theme Review Guidelines
Theme Name
✓ Themes are not to use WordPress in their name
✓ Themes are not to use the term Theme in their name
✓ Themes may use the WP acronym in the Theme name
✓ Themes are not to use version-specific, markup-related terms (e.g. HTML5, CSS3, etc.) in their name.
Theme Review Guidelines
Credit Links
Themes are recommended to use credit links. If used, credit links are required to be appropriate.
Theme Review Guidelines
Credit Links
✓ Themes may optionally designate Author URI and Theme URI in style.css and are recommended to provide at least one of these two links
✓ Themes may optionally include a public-facing credit link in the Theme footer
✓ Since Themes are GPL (or compatible), Theme authors are prohibited from requiring that these links be kept by Theme users
Theme Review Guidelines
Theme Documentation
Themes are required to provide sufficient documentation to explain the use of any custom features or options.
Theme Review Guidelines
Theme Documentation
✓ Themes are required to provide end-user documentation of any design limitations or extraordinary installation/setup instructions
✓ Themes are recommended to include a readme.txt file
✓ In lieu of a readme.txt file, Themes are recommended to include a changelog, indicating version-to-version Theme changes.
Theme Review Guidelines
Theme Unit Test
Themes are required to meet all requirements in the Theme Unit Tests.
Theme Review Guidelines
Theme Unit Test
✓ The Theme must meet all the requirements of the Theme Unit Testhttp://codex.wordpress.org/Theme_Unit_Test
Theme Review Guidelines
Theme Obsolescence
Themes are required to be kept current once accepted into the Theme Repository.
Theme Review Guidelines
Theme Obsolescence
✓ Themes must be kept current once submitted, approved, and accepted into the Theme Repository.
✓ Any Theme not updated to the current theme review process as of the most recent release of WordPress may be subject to temporary suspension.
Theme Development
Whether you’re developing for the Theme Directory, a client or just yourself...
It pays to have good code.
WordPress provides you with a set of standards to follow.
Theme Development
Theme Development Standards
✓ Use well-structured, error-free PHP & valid HTMLWordPress Coding Standards:http://codex.wordpress.org/WordPress_Coding_Standards
✓ Use clean, valid CSSCSS Coding Standard:http://make.wordpress.org/core/handbook/coding-standards/css
✓ Follow design guidelinesSite Design and Layout:http://codex.wordpress.org/Site_Design_and_Layout
Theme Development
Theme Stylesheet
Add information about your theme into your style.css file, in the form of comments./*Theme Name: Twenty ThirteenTheme URI: http://wordpress.org/extend/themes/twentythirteenAuthor: the WordPress teamAuthor URI: http://wordpress.org/Description: The 2013 theme for WordPress takes us back to the blog, featuring a full range of post formats, each displayed beautifully in their own unique way. Design details abound, starting with a gorgeous color scheme and matching header images, optional display fonts for beautiful typography, and a wide layout that looks great on large screens yet remains device-agnostic and is readable on any device.Version: 0.1License: GNU General Public License v2 or laterLicense URI: http://www.gnu.org/licenses/gpl-2.0.htmlTags: black, brown, orange, tan, white, light, one-column, two-columns, right-sidebar, flexible-width, custom-header, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, translation-readyText Domain: twentythirteen
This theme, like WordPress, is licensed under the GPL.Use it to make something cool, have fun, and share what you've learned with others.*/
Theme Development
Theme Stylesheet
When specifying your tags in style.css, make sure to only use the allowed tags.http://wordpress.org/extend/themes/tag-filter
Theme Development
Code Formatting
Pretty code makes for happy developers!
Using Sublime Text 2, automatically format your PHP to conform to the WordPress Coding Standardshttps://github.com/welovewordpress/SublimePhpTidy
Bonus Tip:Easily search the WordPress Codex or lookup WordPress functionshttps://github.com/welovewordpress/SublimeWordPressCodex
Theme Development
100% GPL
Themes must be 100% GPL (or GPL-Compatible)
This means ALL images, HTML, CSS, PHP, fonts, icons, JavaScript etc.
Creative Commons is not GPL-Compatible
Oh, one last thing...
✓ All one word!
✓ Uppercase W!
✓ Uppercase P!
Spell “WordPress” correctly!!!
Links to Remember
WordPress Theme Review Teamhttp://make.wordpress.org/themes
Theme Review Guidelineshttp://codex.wordpress.org/Theme_Review
Theme Unit Testhttp://codex.wordpress.org/Theme_Unit_Test
CSS Coding Standardshttp://make.wordpress.org/core/handbook/coding-standards/css
WordPress Coding Standardshttp://codex.wordpress.org/WordPress_Coding_Standards
Readme.txt format. Similar format to this plugin readme samplehttp://wordpress.org/extend/plugins/about/readme.txt
Uploading your theme to the Theme Directoryhttp://wordpress.org/extend/themes/upload
Links to Remember
GNU GPL v2.0 Licensehttp://www.gnu.org/licenses/gpl-2.0.html
GPL-compatible font licenseshttp://codex.wordpress.org/Theme_Review#GPL-Compatible_Font_Licenses
GPL-compatible icon setshttp://codex.wordpress.org/Theme_Review#GPL-Compatible_Icon_Sets
Theme Check Plugin. Make sure to test your theme before submittinghttp://wordpress.org/extend/plugins/theme-check
Monster Widget. A quick method of adding all core widgets to a sidebarhttp://wordpress.org/extend/plugins/monster-widget
That’s all folks!☺
Thanks! Questions?
You can find me here...maddisondesigns.comeasywpguide.com@maddisondesigns