How to get your theme in WordPress

Preview:

Citation preview

Nisha Singh nisha@amiworks.com @inisa

How to get your theme in WordPress.org theme repository

Theme Repository

How theme reviewing team work• Theme review mailing list• Make WordPress theme Blog • Theme Trac• IRC (Internet Relay Chat)

Theme Trac

• Current approved theme. priority #1• Ticket older then two weeks. priority #2• Previously Reviewed, but not Approved

theme. priority #3• New Themes, Never Reviewed. priority #4

Current Approved Themes

Theme Review

• Ticket are assigned by priority• Reviewers assign tickets to themselves.• Issues are noted in a comment.• Ticket are closed as Approved or Not-

Approved.• Previously approved tickets mostly diff review

only.

Before looking at the Code

1. Theme Name2. Author URI and Theme URI3. Footer Credit Link 4. License5. Copyright6. Screenshot7. Correct Spelling of WordPress

Single Tickets

Guidelines

• Code Quality• Presentation vs Functionality• Theme Features• Template Tags and Hooks• WordPress-Generated CSS Classes • Theme Template Files• Security and Privacy• Theme Documentation• Unit Test

Guidelines (Code Quality)

Themes must not generate any WordPress• deprecated-function notices• PHP errors• warnings or notices• HTML/CSS validation errors• JavaScript errors

Guidelines – (Debug Error)

Guidelines (Presentation vs Functionality)

• Language• Themes is to define the presentation of user

content.• Theme-independent site options or

functionality.

Guidelines (Required Theme Features)

• Automatic Feed Links. add_theme_support( 'automatic-feed-links' )

• Custom Backgrounds add_theme_support('custom-background')

• Custom Header add_theme_support('custom-header')

• Post Thumbnails add_theme_support('post-thumbnails') / the_post_thumbnail()

• Post Formats• Sidebars register_sidebar() / dynamic_sidebar()• Navigation Menus wp_nav_menu()

Guidelines (Required Template Tags and Hooks)

Template Tags• comments.php (comments_template()• header.php (get_header()• footer.php (get_footer()• siebar.php (get_sidebar()• searchform.php ( get_search_form()Hooks• wp_title() • wp_head() (immediately before </head>)• body_class() • wp_footer() (immediately before </body>)• content_width• post_class()• wp_link_pages()• paginate_comments_links(), or previous_comments_link()/next_comments_link()• posts_nav_link(), or previous_posts_link()/next_posts_link(), or paginate_links()• comment_form • delete_post

Tags

Guidelines (WordPress-Generated CSS Classes)

• Alignment Classes - aligncenter - alignleft - alignright

• Caption Related Classes (Gallery) - wp-caption - wp-caption-text - gallery-caption

• Post Classes - sticky• Comment Classes - bypostauthor

Core CSS

Guidelines (Theme Template Files)

Required Files -• index.php• Comments.php• screenshot.png• Style.css

Recommended Files –• 404.php• archive.php• page.php• search.php• single.php• header.php• footer.php• sidebar.php

Guidelines (Security and Privacy)

• Prefix.• Required to implement Theme Options. • Use the add_theme_page() function to add the Theme

Settings Page rather than using add_menu_page() to add a top-level menu.

• Use single array to save theme option.• Themes are required to use esc_attr() for text inputs and

esc_html() for textareas.• Use validate and sanitize all untrusted data.

Guidelines (Theme Documentation)

• Provide end-user documentation

Guidelines (Theme Unit Test)• Themes are required to meet all requirements in the

Theme Unit Tests.- Menu - Static Front Page - 404 Page & Search Results Page - Index Page - Scheduled Post - Draft Post - Layout Test - Readability Test- Clearing Floats- Post Format Test - Widget

Guidelines( Tools & Plugins)

Tools• Data: Theme Unit TestPlugins• Theme Check Plugin• WP DEBUG • Log Deprecated Notice • Debug bar • Moster Widget

Theme Check Result

HOW TO BECOME A REVIEWER

• Setup a WordPress test environment• Setup Theme - Trac access (Create account)• Join Theme Reviewers Mail List.• Go to the Trac Ticket Request Page and Leave a

Comment asking to be assigned a Theme• Perform same test review.• Once you have done enough Theme reviews,

you will be added to the “Reviewers” group.

Important Links

• Theme review mailing list -> http://lists.wordpress.org/mailman/listinfo/theme-reviewers

• Make WordPress theme Blog -> http://make.wordpress.org/themes/blog/

• Theme Trac -> http://themes.trac.wordpress.org/• IRC (Internet Relay Chat) -> http://

codex.wordpress.org/IRC

• Code Quality -> http://codex.wordpress.org/Theme_Review#Code_Quality

• Presentation vs Functionality -> http://codex.wordpress.org/Theme_Review#Presentation_vs_Functionality

• Theme Features -> http://codex.wordpress.org/Theme_Features

• Template Tags and Hooks -> http://codex.wordpress.org/Theme_Review#Template_Tags_and_Hooks

• Theme Template Files -> http://codex.wordpress.org/Theme_Review#Theme_Template_Files

• Security and Privacy -> http://codex.wordpress.org/Theme_Review#Security_and_Privacy

• Theme Documentation -> http://codex.wordpress.org/Theme_Review#Theme_Documentation

• Unit Test -> http://codex.wordpress.org/Theme_Unit_Test

Thanks,

Questions