SlideShare une entreprise Scribd logo
1  sur  38
WordPress
Theme Development
        &
     Starting
     Beyond
    WordPress
  Theme Review
Audience


• WordPress Theme Developers

• Wannabe WordPress Theme Developers

• Wannabe WordPress Theme Reviewer
Why?

- Contributing to WordPress Community

- Get Recognition

- Build International Partners and Co-workers

- Start Earning


Related:
Starting WordPress Theme Development
http://www.slideshare.net/catchinternet/starting-wordpress-theme-
development
I‟m Sakin Shrestha


    WordPress Theme Developer


                          Founder
                     Catch Internet
                     Catch Themes
How Theme Review Team Works
• WordPress Theme
  Repositoryhttp://wordpress.org/extend/themes/
• Make WordPress Theme
  Bloghttp://make.wordpress.org/themes/
• Theme Guidehttp://developer.wordpress.com/themes/
• Theme Review Mailing
  Listhttp://lists.wordpress.org/mailman/listinfo/theme-
  reviewers
• Theme Trachttps://themes.trac.wordpress.org/
• Internet Relay Chat- IRC http://codex.wordpress.org/IRC
How to Join WPTRT
• Sign up for account in WordPress.org
• Subscribe to Theme Review Mailing List
• Go to Theme Review Trac Ticket Request Queue page
  http://make.wordpress.org/themes/about/trac-ticket-request-
  queue/
• Leave a comment asking to be assigned a Theme. Be
  sure to include your WordPress.org username with your
  request.
• Soon after 8 to 10 reviews you will be assign Theme
  Reviewer, then you can just review theme as per the
  priority list in Theme Trac.
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
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.
Setup a WordPress test environment
• Install Latest Version of WordPress
• Install plugin WordPress
  Importerhttp://wordpress.org/extend/plugins/wordpress-importer/
• Import the Theme Unit Test datahttps://wpcom-
  themes.svn.automattic.com/demo/theme-unit-test-data.xml
• Install “Developer”
  pluginhttp://wordpress.org/extend/plugins/developer/
• Settings:
   – General (Site Title, Tagline), Reading (# Posts per page)
   – Discussion (Threaded comments, Depth, # Comments per page)
   – Media (defaults), Permalinks (Pretty)
• Set WP_Debug to „true‟ in wp-config
   – define('WP_DEBUG', true);
• Check for any extraneous file
   – .git or .svn, MACOSX files, backup files, etc
Minimum Plugin Installation
• Theme Check
• Debug Bar
• Log Deprecated Notices
• Debogger
• Monster Widget
• WordPress Beta Tester
• Regenerate Thumbnails
Before Looking at the Code
• Theme Name
• Author URI and Theme URI
• Footer Credit Link
• License
• Copyright
• Screenshot
• Correct Spelling of WordPress
• Automated Test: Theme Check and Log deprecated
  Notices.
Guidelines (Unit Test)
                    http://codex.wordpress.org/Theme_Unit_Test


• Static Front Page
• Blog Posts Index Page
   – Scheduled Post, Draft Post, Layout Test, Readability Test, Post Format Tests, This
     Post Has No Body, No Title, Many Categories, Many Tags, Protect Test With Secret
     Password,
• Single Post
   – Layout Test, Readability Test, Image Test, Post Format All, Post With Long Title, This
     Post Has No Body, No Title, Many Categories, Many Tags, Protected Test With Secret
     Password, Comment Test, Comments Disabled, Many Trackbacks
• Pages
   – Page With Comments, Page With Comments Disabled, Parent Page, Child Page 1,
     Child Page 2, Clearing Floats
• Misc Pages
   – Search Results, Not Found, 404 page
• General
   – Menus, Widgets, screenshot, Anchor Text and Credit Link
Guidelines (Code Quality)
              http://codex.wordpress.org/Theme_Review


• Themes must not generate any WordPress Deprecated
  function notices. Note: Themes must not support
  backward compatibility for more than 2 prior major WP
  versions.
• Check PHP, JS, CSS, HTML errors
• Doctype Declaration
• Theme Namespacing, theme-slug, textdomain
• Hard-codes vs. configurable
• Incorporate core functionality and don‟t re-invent
• Use core APIs where possible
Guidelines (Presentation Vs. Functionality)
                  http://codex.wordpress.org/Theme_Review



• Language
   – All public-facing text in English
   – Optionally incorporate translation/internationalization
   – Themes are required to use as string as the textdomain in
     translation functions
• Favicons
   – Recommended to implement custom favicon functionality
   – If implement, add is support for user-defined favicon images
• Plugin Territory
   – Adding/Modifying content, Shortcodes, Metabox
• Custom Post Types/ Taxonomies
   – Theme Lock-in, Consider companion plugin
Guidelines (Required Theme
                   Features)
                   http://codex.wordpress.org/Theme_Review

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

• Sidebars
  register_sidebar();
  dynamic_sidebar();
  If Theme uses custom widgets, then
  add_action(widgets_init); register_widget();

• Comments
  comments_template();
  wp_list_comments();
  comment_form()
  wp_enqueue_script( 'comment-reply' );
  If using callback for wp_list_comments(); then
  comment_class();
Guidelines (Recommended Theme
                   Features)
                   http://codex.wordpress.org/Theme_Review

• Navigation Menus
  wp_nav_menu();
  register_nav_menu(); or register_nav_menus();

• Post Thumbnails
  the_post_thumbnail();
  the_theme_support( ‘post-thumbnails’ );

• Custom Header
  add_theme_support('custom-header');

• Custom Backgrounds
  add_theme_support('custom-background');

• Visual Editor CSS
  add_editor_style()
  editor-style.css
Guidelines (Required Hooks & Navigation)
                      http://codex.wordpress.org/Theme_Review

Tags and hooks, that are required to be included where appropriate:
• wp_title();
• wp_head(); immediately before </head>
• body_class(); inside <body> tag
• wp_title();
• $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();
• wp_footer(); immediately before </body>
Guidelines (Required Hooks & Navigation)
                       http://codex.wordpress.org/Theme_Review

Standard Template files: required to be called using the correct template tag.
• comments.php        ( via comments_template(); )
• header.php ( via get_header(); )
• footer.php ( via get_footer(); )
• sidebar.php ( via get_sidebar(); )
• searchform.php ( via get_search_form(); )
Custom Template files: required to be called
• get_template_part(); or locate_template();
• Example: get_template_part( 'content', get_post_format() );
• include( get_template_directory() . '/file.php' ) must not be used to call Theme
  template part files.
Guidelines (Required Hooks & Navigation)
                       http://codex.wordpress.org/Theme_Review

You also have several functions available for getting the path:
• get_template_directory()
  File path to parent Theme directory. Returns the absolute template
  directory path.
• get_template_directory_uri()
  URL path to parent Theme directory. Returns the template directory URI.
• get_stylesheet_directory()
  File path to current Theme directory. Returns the absolute stylesheet
  directory path.
• get_stylesheet_directory_uri()
  URL path to current Theme directory. Returns the stylesheet directory URI.
Example:
   // Load up our theme options page and related code.
   require( get_template_directory() . '/inc/theme-options.php' )
Guidelines (Required Hooks & Navigation)
                            http://codex.wordpress.org/Theme_Review

• Never hard-coding stylesheet/script links
    For Deregistering Scripts & Styles
    – wp_deregister_script()
    – wp_deregister_style()
    For Registering Scripts & Styles
    – wp_register_script()
    – wp_register_style()
    For EnqueueScripts & Styles
    – wp_enqueue_script()
    – wp_enqueue_style()

• Themes are required to use core-bundled scripts, if using such scripts
• Themes must not use TimThumb
Guidelines (Required Hooks & Navigation)
                     http://codex.wordpress.org/Theme_Review


• If used, themes are required to modify the title, body class, post
  class through filter
   – wp_title()
   – body_class()
   – post_class();
Guidelines (WordPress – Generated CSS Classes)
                    http://codex.wordpress.org/Theme_Review


  Themes are required to support the following WordPress-defined CSS
  classes, or similar elements:

• Alignment Classes
   – aligncenter, alignleft, alignright

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

• Post Classes
   – sticky

• Comment Classes
   – bypostauthor
Guidelines (Template Files)
                    http://codex.wordpress.org/Theme_Review


• Required
  – index.php

  – comments.php

  – screenshot.png
        • Recommended 4:3 W:H ratio, size 600x450px (2x the previous 300x225px, to
          account for Retina displays).

  – style.css



Note:
  Child Themes may include less than this, since they depend on
  functionality of the parent theme.
Guidelines (Template Files)
                  http://codex.wordpress.org/Theme_Review


• Recommended
   – 404.php
   – archieve.php
   – page.png
   – search.css
   – single.php
   – header.php
   – footer.php
   – sidebar.php
• Note
header.php, footer.php, and sidebar.php include variations such as:
  sidebar-left.php, sidebar-right.php, sidebar-footer.php, etc.
Guidelines (Security & Privacy)
                  http://codex.wordpress.org/Theme_Review


• Unique Prefix
• If used theme options panel, required to implement Theme Options
  and Theme Setting page.
• Use the add_theme_page() function to add the Theme Settings
  Page rather than using add_menu_page() to add a top-level menu.
• Required to use the edit_theme_options capability rather than rely
  on a role.
• Use single array to save theme option.
• Themes are required to use esc_attr() for text inputs , esc_html()
  for textareas, esc_url() for url, esc_js() for javascript.
• Use validate and sanitize all untrusted data.
  http://codex.wordpress.org/Data_Validation
Guidelines (Theme Documentation)
               http://codex.wordpress.org/Theme_Review


• 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,
  using Plugin readme.txt markdown.
• In lieu of a readme.txt file, Themes are recommended to
  include a changelog, indicating version-to-version
  Theme changes.
For Theme Reviewer: After All Theme Checks
                 (Leave your Comment in Trac)

• After all theme checks
• You just leave a comment as Suggested for Approved or Suggest
  for Not-Approved
• Then leave the comment of Each Test Issues if any
• Suggest the way to fix the issues
• After enough checks ideally 10 an above, you will be assigned as
  Reviewer. You can also ask admin team to make you reviewer.
• After you are assign as Reviewer, you can assign and close ticket
  independently.
For Theme Developer: After All Theme Checks
            (Upload your Theme To WordPress.org)

• After all these Test
• zip your theme
• Upload your theme to WordPress.org Theme Repository at
  http://wordpress.org/extend/themes/upload
• Wait for your theme to get approved and listed in WordPress.org
  Theme Repository at http://wordpress.org/extend/themes/
Questions?
          Thanks
      Sakin Shrestha


Blog: http://sakinshrestha.com
Email: sakin@catchinternet.com
   Twitter: @sakinshrestha

Contenu connexe

Tendances

How to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public ReleaseHow to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public ReleaseDavid Yeiser
 
WordPress Theme Workshop: Part 2
WordPress Theme Workshop: Part 2WordPress Theme Workshop: Part 2
WordPress Theme Workshop: Part 2David Bisset
 
WordPress Themes 101 - PSUWeb13 Workshop
WordPress Themes 101 - PSUWeb13 WorkshopWordPress Themes 101 - PSUWeb13 Workshop
WordPress Themes 101 - PSUWeb13 WorkshopCurtiss Grymala
 
Wordpress theme submission requirement for Themeforest
Wordpress theme submission requirement for ThemeforestWordpress theme submission requirement for Themeforest
Wordpress theme submission requirement for ThemeforestEnayet Rajib
 
WordPress Themes 101 - HighEdWeb New England 2013
WordPress Themes 101 - HighEdWeb New England 2013WordPress Themes 101 - HighEdWeb New England 2013
WordPress Themes 101 - HighEdWeb New England 2013Curtiss Grymala
 
Wordpress beyond blogging
Wordpress beyond bloggingWordpress beyond blogging
Wordpress beyond bloggingJulien Minguely
 
WordPress Theme Design and Development Workshop - Day 2
WordPress Theme Design and Development Workshop - Day 2WordPress Theme Design and Development Workshop - Day 2
WordPress Theme Design and Development Workshop - Day 2Mizanur Rahaman Mizan
 
WordPress Themes 101 - dotEduGuru Summit 2013
WordPress Themes 101 - dotEduGuru Summit 2013WordPress Themes 101 - dotEduGuru Summit 2013
WordPress Themes 101 - dotEduGuru Summit 2013Curtiss Grymala
 
Writing a WordPress Theme - HighEdWeb 2013 #WRK2
Writing a WordPress Theme - HighEdWeb 2013 #WRK2Writing a WordPress Theme - HighEdWeb 2013 #WRK2
Writing a WordPress Theme - HighEdWeb 2013 #WRK2Curtiss Grymala
 
WordPress Template Hierarchy
WordPress Template HierarchyWordPress Template Hierarchy
WordPress Template HierarchySarah Whinnem
 
WordPress Template hierarchy
WordPress Template hierarchyWordPress Template hierarchy
WordPress Template hierarchyJason Yingling
 
Builing a WordPress Theme
Builing a WordPress ThemeBuiling a WordPress Theme
Builing a WordPress Themecertainstrings
 
Wordpress template hierarchy
Wordpress template hierarchyWordpress template hierarchy
Wordpress template hierarchyStockton Group
 
WordPress can do that?!
WordPress can do that?!WordPress can do that?!
WordPress can do that?!Scott McNulty
 
Add-On Development: EE Expects that Every Developer will do his Duty
Add-On Development: EE Expects that Every Developer will do his DutyAdd-On Development: EE Expects that Every Developer will do his Duty
Add-On Development: EE Expects that Every Developer will do his Dutyreedmaniac
 
Wp nhcc portfolio
Wp nhcc portfolioWp nhcc portfolio
Wp nhcc portfoliogregorvios
 
WordPress Beginners Workshop
WordPress Beginners WorkshopWordPress Beginners Workshop
WordPress Beginners WorkshopThe Toolbox, Inc.
 

Tendances (20)

Wordpress overview
Wordpress overviewWordpress overview
Wordpress overview
 
How to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public ReleaseHow to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public Release
 
WordPress Theme Workshop: Part 2
WordPress Theme Workshop: Part 2WordPress Theme Workshop: Part 2
WordPress Theme Workshop: Part 2
 
WordPress Themes 101 - PSUWeb13 Workshop
WordPress Themes 101 - PSUWeb13 WorkshopWordPress Themes 101 - PSUWeb13 Workshop
WordPress Themes 101 - PSUWeb13 Workshop
 
Wordpress theme submission requirement for Themeforest
Wordpress theme submission requirement for ThemeforestWordpress theme submission requirement for Themeforest
Wordpress theme submission requirement for Themeforest
 
WordPress Themes 101 - HighEdWeb New England 2013
WordPress Themes 101 - HighEdWeb New England 2013WordPress Themes 101 - HighEdWeb New England 2013
WordPress Themes 101 - HighEdWeb New England 2013
 
Wordpress beyond blogging
Wordpress beyond bloggingWordpress beyond blogging
Wordpress beyond blogging
 
WordPress Theme Design and Development Workshop - Day 2
WordPress Theme Design and Development Workshop - Day 2WordPress Theme Design and Development Workshop - Day 2
WordPress Theme Design and Development Workshop - Day 2
 
WordPress Themes 101 - dotEduGuru Summit 2013
WordPress Themes 101 - dotEduGuru Summit 2013WordPress Themes 101 - dotEduGuru Summit 2013
WordPress Themes 101 - dotEduGuru Summit 2013
 
Writing a WordPress Theme - HighEdWeb 2013 #WRK2
Writing a WordPress Theme - HighEdWeb 2013 #WRK2Writing a WordPress Theme - HighEdWeb 2013 #WRK2
Writing a WordPress Theme - HighEdWeb 2013 #WRK2
 
เพาเวอร์พอย Wordpress3 5-1
เพาเวอร์พอย Wordpress3 5-1เพาเวอร์พอย Wordpress3 5-1
เพาเวอร์พอย Wordpress3 5-1
 
WordPress Template Hierarchy
WordPress Template HierarchyWordPress Template Hierarchy
WordPress Template Hierarchy
 
WordPress Template hierarchy
WordPress Template hierarchyWordPress Template hierarchy
WordPress Template hierarchy
 
Newspapers with WordPress
Newspapers with WordPressNewspapers with WordPress
Newspapers with WordPress
 
Builing a WordPress Theme
Builing a WordPress ThemeBuiling a WordPress Theme
Builing a WordPress Theme
 
Wordpress template hierarchy
Wordpress template hierarchyWordpress template hierarchy
Wordpress template hierarchy
 
WordPress can do that?!
WordPress can do that?!WordPress can do that?!
WordPress can do that?!
 
Add-On Development: EE Expects that Every Developer will do his Duty
Add-On Development: EE Expects that Every Developer will do his DutyAdd-On Development: EE Expects that Every Developer will do his Duty
Add-On Development: EE Expects that Every Developer will do his Duty
 
Wp nhcc portfolio
Wp nhcc portfolioWp nhcc portfolio
Wp nhcc portfolio
 
WordPress Beginners Workshop
WordPress Beginners WorkshopWordPress Beginners Workshop
WordPress Beginners Workshop
 

En vedette

επανάσταση 1821
επανάσταση 1821επανάσταση 1821
επανάσταση 1821an kar
 
Nike TaiWan QiJianDian 5589
Nike TaiWan QiJianDian 5589Nike TaiWan QiJianDian 5589
Nike TaiWan QiJianDian 5589learneddent4790
 
Process of making magazine
Process of making magazineProcess of making magazine
Process of making magazineasiyam
 
Resume Saillant Aurelien 2015
Resume Saillant Aurelien 2015Resume Saillant Aurelien 2015
Resume Saillant Aurelien 2015Aurelien SAILLANT
 
police end service
police end servicepolice end service
police end serviceMohammed Ali
 
Σταυροφοριες
ΣταυροφοριεςΣταυροφοριες
Σταυροφοριεςan kar
 
SOKA Kaos Kaki Halal Pertama di Dunia
SOKA Kaos Kaki Halal Pertama di DuniaSOKA Kaos Kaki Halal Pertama di Dunia
SOKA Kaos Kaki Halal Pertama di DuniaPT SOKA CIPTA NIAGA
 
Historia pensamiento evolutivo
Historia pensamiento evolutivoHistoria pensamiento evolutivo
Historia pensamiento evolutivoArpon Files
 
φίλοι από άλλες χώρες, τελικές συμπερασματικές προτάσεις
φίλοι από άλλες χώρες, τελικές   συμπερασματικές προτάσειςφίλοι από άλλες χώρες, τελικές   συμπερασματικές προτάσεις
φίλοι από άλλες χώρες, τελικές συμπερασματικές προτάσειςgeorge papadopoulos
 

En vedette (12)

Tara
TaraTara
Tara
 
επανάσταση 1821
επανάσταση 1821επανάσταση 1821
επανάσταση 1821
 
Nike TaiWan QiJianDian 5589
Nike TaiWan QiJianDian 5589Nike TaiWan QiJianDian 5589
Nike TaiWan QiJianDian 5589
 
BA details
BA detailsBA details
BA details
 
Mapa conceptual gerencia de proyectos
Mapa conceptual gerencia de proyectosMapa conceptual gerencia de proyectos
Mapa conceptual gerencia de proyectos
 
Process of making magazine
Process of making magazineProcess of making magazine
Process of making magazine
 
Resume Saillant Aurelien 2015
Resume Saillant Aurelien 2015Resume Saillant Aurelien 2015
Resume Saillant Aurelien 2015
 
police end service
police end servicepolice end service
police end service
 
Σταυροφοριες
ΣταυροφοριεςΣταυροφοριες
Σταυροφοριες
 
SOKA Kaos Kaki Halal Pertama di Dunia
SOKA Kaos Kaki Halal Pertama di DuniaSOKA Kaos Kaki Halal Pertama di Dunia
SOKA Kaos Kaki Halal Pertama di Dunia
 
Historia pensamiento evolutivo
Historia pensamiento evolutivoHistoria pensamiento evolutivo
Historia pensamiento evolutivo
 
φίλοι από άλλες χώρες, τελικές συμπερασματικές προτάσεις
φίλοι από άλλες χώρες, τελικές   συμπερασματικές προτάσειςφίλοι από άλλες χώρες, τελικές   συμπερασματικές προτάσεις
φίλοι από άλλες χώρες, τελικές συμπερασματικές προτάσεις
 

Similaire à Starting WordPress Theme Review

How to get your theme in WordPress
How to get your theme in WordPressHow to get your theme in WordPress
How to get your theme in WordPressNisha Singh
 
Wordpress theme development
Wordpress theme developmentWordpress theme development
Wordpress theme developmentNaeem Junejo
 
Word press bootcamp By Sourcescript Innovations and Mentors Dojo
Word press bootcamp  By Sourcescript Innovations and Mentors DojoWord press bootcamp  By Sourcescript Innovations and Mentors Dojo
Word press bootcamp By Sourcescript Innovations and Mentors Dojolightshire
 
The WordPress University 2012
The WordPress University 2012The WordPress University 2012
The WordPress University 2012Stephanie Leary
 
Anatomy of a Wordpress theme
Anatomy of a Wordpress themeAnatomy of a Wordpress theme
Anatomy of a Wordpress themeDave Wallace
 
WordPress Themes and Plugins
WordPress Themes and PluginsWordPress Themes and Plugins
WordPress Themes and Pluginssuperann
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme developmentThad Allender
 
WordPress Intermediate Workshop
WordPress Intermediate WorkshopWordPress Intermediate Workshop
WordPress Intermediate WorkshopThe Toolbox, Inc.
 
WordPress - Open Source Overview Presentation
WordPress - Open Source Overview PresentationWordPress - Open Source Overview Presentation
WordPress - Open Source Overview PresentationAndy Stratton
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress UniversityStephanie Leary
 
WordPress
WordPressWordPress
WordPressrisager
 
American University WordPress Theming Lecture
American University WordPress Theming LectureAmerican University WordPress Theming Lecture
American University WordPress Theming LectureAaron Brazell
 
Submitting to the WordPress Theme Directory
Submitting to the WordPress Theme DirectorySubmitting to the WordPress Theme Directory
Submitting to the WordPress Theme DirectoryAnthony Hortin
 
WordPress Theme Reviewers Team
WordPress Theme Reviewers TeamWordPress Theme Reviewers Team
WordPress Theme Reviewers TeamMario Peshev
 
A11y Conference Talk: Building an Accessible WordPress Theme
A11y Conference Talk: Building an Accessible WordPress ThemeA11y Conference Talk: Building an Accessible WordPress Theme
A11y Conference Talk: Building an Accessible WordPress ThemeTomAuger
 
From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With LoveUp2 Technology
 
Newbies guide to customizing word press themes 25
Newbies guide to customizing word press themes 25Newbies guide to customizing word press themes 25
Newbies guide to customizing word press themes 25New Tricks
 
Websites With Wordpress
Websites With WordpressWebsites With Wordpress
Websites With WordpressCharly Leetham
 

Similaire à Starting WordPress Theme Review (20)

How to get your theme in WordPress
How to get your theme in WordPressHow to get your theme in WordPress
How to get your theme in WordPress
 
Wordpress theme development
Wordpress theme developmentWordpress theme development
Wordpress theme development
 
Word press bootcamp By Sourcescript Innovations and Mentors Dojo
Word press bootcamp  By Sourcescript Innovations and Mentors DojoWord press bootcamp  By Sourcescript Innovations and Mentors Dojo
Word press bootcamp By Sourcescript Innovations and Mentors Dojo
 
The WordPress University 2012
The WordPress University 2012The WordPress University 2012
The WordPress University 2012
 
Anatomy of a Wordpress theme
Anatomy of a Wordpress themeAnatomy of a Wordpress theme
Anatomy of a Wordpress theme
 
WordPress Themes and Plugins
WordPress Themes and PluginsWordPress Themes and Plugins
WordPress Themes and Plugins
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme development
 
WordPress Intermediate Workshop
WordPress Intermediate WorkshopWordPress Intermediate Workshop
WordPress Intermediate Workshop
 
WordPress Complete Tutorial
WordPress Complete TutorialWordPress Complete Tutorial
WordPress Complete Tutorial
 
WordPress - Open Source Overview Presentation
WordPress - Open Source Overview PresentationWordPress - Open Source Overview Presentation
WordPress - Open Source Overview Presentation
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress University
 
WordPress
WordPressWordPress
WordPress
 
American University WordPress Theming Lecture
American University WordPress Theming LectureAmerican University WordPress Theming Lecture
American University WordPress Theming Lecture
 
Submitting to the WordPress Theme Directory
Submitting to the WordPress Theme DirectorySubmitting to the WordPress Theme Directory
Submitting to the WordPress Theme Directory
 
The Theme Review Process
The Theme Review ProcessThe Theme Review Process
The Theme Review Process
 
WordPress Theme Reviewers Team
WordPress Theme Reviewers TeamWordPress Theme Reviewers Team
WordPress Theme Reviewers Team
 
A11y Conference Talk: Building an Accessible WordPress Theme
A11y Conference Talk: Building an Accessible WordPress ThemeA11y Conference Talk: Building an Accessible WordPress Theme
A11y Conference Talk: Building an Accessible WordPress Theme
 
From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With Love
 
Newbies guide to customizing word press themes 25
Newbies guide to customizing word press themes 25Newbies guide to customizing word press themes 25
Newbies guide to customizing word press themes 25
 
Websites With Wordpress
Websites With WordpressWebsites With Wordpress
Websites With Wordpress
 

Plus de Catch Themes

Building WordPress Theme Business: My Story
Building WordPress Theme Business: My StoryBuilding WordPress Theme Business: My Story
Building WordPress Theme Business: My StoryCatch Themes
 
Speaking at WordCamps? What not to do…
Speaking at WordCamps? What not to do…Speaking at WordCamps? What not to do…
Speaking at WordCamps? What not to do…Catch Themes
 
Opening Remarks - WordCamp Kathmandu, 2016
Opening Remarks - WordCamp Kathmandu, 2016 Opening Remarks - WordCamp Kathmandu, 2016
Opening Remarks - WordCamp Kathmandu, 2016 Catch Themes
 
Breaking social barriers and creating opportunities
Breaking social barriers and creating opportunitiesBreaking social barriers and creating opportunities
Breaking social barriers and creating opportunitiesCatch Themes
 
World of Creative Designer & Front-end-Developer
World of Creative Designer & Front-end-DeveloperWorld of Creative Designer & Front-end-Developer
World of Creative Designer & Front-end-DeveloperCatch Themes
 
Approaches To WordPress Theme Development
Approaches To WordPress Theme DevelopmentApproaches To WordPress Theme Development
Approaches To WordPress Theme DevelopmentCatch Themes
 
Contributing to WordPress Theme Review at WordPress.org
Contributing to WordPress Theme Review at WordPress.orgContributing to WordPress Theme Review at WordPress.org
Contributing to WordPress Theme Review at WordPress.orgCatch Themes
 
How to get your theme on Top 15 Popular Themes at WordPress.org
How to get your theme on Top 15 Popular Themes at WordPress.orgHow to get your theme on Top 15 Popular Themes at WordPress.org
How to get your theme on Top 15 Popular Themes at WordPress.orgCatch Themes
 
Building Secure WordPress Sites
Building Secure WordPress Sites Building Secure WordPress Sites
Building Secure WordPress Sites Catch Themes
 
WordPress Uses & Scope
WordPress Uses & ScopeWordPress Uses & Scope
WordPress Uses & ScopeCatch Themes
 
WordPress Security Tips
WordPress Security TipsWordPress Security Tips
WordPress Security TipsCatch Themes
 

Plus de Catch Themes (11)

Building WordPress Theme Business: My Story
Building WordPress Theme Business: My StoryBuilding WordPress Theme Business: My Story
Building WordPress Theme Business: My Story
 
Speaking at WordCamps? What not to do…
Speaking at WordCamps? What not to do…Speaking at WordCamps? What not to do…
Speaking at WordCamps? What not to do…
 
Opening Remarks - WordCamp Kathmandu, 2016
Opening Remarks - WordCamp Kathmandu, 2016 Opening Remarks - WordCamp Kathmandu, 2016
Opening Remarks - WordCamp Kathmandu, 2016
 
Breaking social barriers and creating opportunities
Breaking social barriers and creating opportunitiesBreaking social barriers and creating opportunities
Breaking social barriers and creating opportunities
 
World of Creative Designer & Front-end-Developer
World of Creative Designer & Front-end-DeveloperWorld of Creative Designer & Front-end-Developer
World of Creative Designer & Front-end-Developer
 
Approaches To WordPress Theme Development
Approaches To WordPress Theme DevelopmentApproaches To WordPress Theme Development
Approaches To WordPress Theme Development
 
Contributing to WordPress Theme Review at WordPress.org
Contributing to WordPress Theme Review at WordPress.orgContributing to WordPress Theme Review at WordPress.org
Contributing to WordPress Theme Review at WordPress.org
 
How to get your theme on Top 15 Popular Themes at WordPress.org
How to get your theme on Top 15 Popular Themes at WordPress.orgHow to get your theme on Top 15 Popular Themes at WordPress.org
How to get your theme on Top 15 Popular Themes at WordPress.org
 
Building Secure WordPress Sites
Building Secure WordPress Sites Building Secure WordPress Sites
Building Secure WordPress Sites
 
WordPress Uses & Scope
WordPress Uses & ScopeWordPress Uses & Scope
WordPress Uses & Scope
 
WordPress Security Tips
WordPress Security TipsWordPress Security Tips
WordPress Security Tips
 

Dernier

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Dernier (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

Starting WordPress Theme Review

  • 1. WordPress Theme Development & Starting Beyond WordPress Theme Review
  • 2. Audience • WordPress Theme Developers • Wannabe WordPress Theme Developers • Wannabe WordPress Theme Reviewer
  • 3. Why? - Contributing to WordPress Community - Get Recognition - Build International Partners and Co-workers - Start Earning Related: Starting WordPress Theme Development http://www.slideshare.net/catchinternet/starting-wordpress-theme- development
  • 4. I‟m Sakin Shrestha WordPress Theme Developer Founder Catch Internet Catch Themes
  • 5. How Theme Review Team Works • WordPress Theme Repositoryhttp://wordpress.org/extend/themes/ • Make WordPress Theme Bloghttp://make.wordpress.org/themes/ • Theme Guidehttp://developer.wordpress.com/themes/ • Theme Review Mailing Listhttp://lists.wordpress.org/mailman/listinfo/theme- reviewers • Theme Trachttps://themes.trac.wordpress.org/ • Internet Relay Chat- IRC http://codex.wordpress.org/IRC
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. How to Join WPTRT • Sign up for account in WordPress.org • Subscribe to Theme Review Mailing List • Go to Theme Review Trac Ticket Request Queue page http://make.wordpress.org/themes/about/trac-ticket-request- queue/ • Leave a comment asking to be assigned a Theme. Be sure to include your WordPress.org username with your request. • Soon after 8 to 10 reviews you will be assign Theme Reviewer, then you can just review theme as per the priority list in Theme Trac.
  • 12. 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
  • 13. 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.
  • 14.
  • 15.
  • 16. Setup a WordPress test environment • Install Latest Version of WordPress • Install plugin WordPress Importerhttp://wordpress.org/extend/plugins/wordpress-importer/ • Import the Theme Unit Test datahttps://wpcom- themes.svn.automattic.com/demo/theme-unit-test-data.xml • Install “Developer” pluginhttp://wordpress.org/extend/plugins/developer/ • Settings: – General (Site Title, Tagline), Reading (# Posts per page) – Discussion (Threaded comments, Depth, # Comments per page) – Media (defaults), Permalinks (Pretty) • Set WP_Debug to „true‟ in wp-config – define('WP_DEBUG', true); • Check for any extraneous file – .git or .svn, MACOSX files, backup files, etc
  • 17.
  • 18. Minimum Plugin Installation • Theme Check • Debug Bar • Log Deprecated Notices • Debogger • Monster Widget • WordPress Beta Tester • Regenerate Thumbnails
  • 19. Before Looking at the Code • Theme Name • Author URI and Theme URI • Footer Credit Link • License • Copyright • Screenshot • Correct Spelling of WordPress • Automated Test: Theme Check and Log deprecated Notices.
  • 20. Guidelines (Unit Test) http://codex.wordpress.org/Theme_Unit_Test • Static Front Page • Blog Posts Index Page – Scheduled Post, Draft Post, Layout Test, Readability Test, Post Format Tests, This Post Has No Body, No Title, Many Categories, Many Tags, Protect Test With Secret Password, • Single Post – Layout Test, Readability Test, Image Test, Post Format All, Post With Long Title, This Post Has No Body, No Title, Many Categories, Many Tags, Protected Test With Secret Password, Comment Test, Comments Disabled, Many Trackbacks • Pages – Page With Comments, Page With Comments Disabled, Parent Page, Child Page 1, Child Page 2, Clearing Floats • Misc Pages – Search Results, Not Found, 404 page • General – Menus, Widgets, screenshot, Anchor Text and Credit Link
  • 21. Guidelines (Code Quality) http://codex.wordpress.org/Theme_Review • Themes must not generate any WordPress Deprecated function notices. Note: Themes must not support backward compatibility for more than 2 prior major WP versions. • Check PHP, JS, CSS, HTML errors • Doctype Declaration • Theme Namespacing, theme-slug, textdomain • Hard-codes vs. configurable • Incorporate core functionality and don‟t re-invent • Use core APIs where possible
  • 22. Guidelines (Presentation Vs. Functionality) http://codex.wordpress.org/Theme_Review • Language – All public-facing text in English – Optionally incorporate translation/internationalization – Themes are required to use as string as the textdomain in translation functions • Favicons – Recommended to implement custom favicon functionality – If implement, add is support for user-defined favicon images • Plugin Territory – Adding/Modifying content, Shortcodes, Metabox • Custom Post Types/ Taxonomies – Theme Lock-in, Consider companion plugin
  • 23. Guidelines (Required Theme Features) http://codex.wordpress.org/Theme_Review • Automatic Feed Links. add_theme_support( 'automatic-feed-links' ); • Sidebars register_sidebar(); dynamic_sidebar(); If Theme uses custom widgets, then add_action(widgets_init); register_widget(); • Comments comments_template(); wp_list_comments(); comment_form() wp_enqueue_script( 'comment-reply' ); If using callback for wp_list_comments(); then comment_class();
  • 24. Guidelines (Recommended Theme Features) http://codex.wordpress.org/Theme_Review • Navigation Menus wp_nav_menu(); register_nav_menu(); or register_nav_menus(); • Post Thumbnails the_post_thumbnail(); the_theme_support( ‘post-thumbnails’ ); • Custom Header add_theme_support('custom-header'); • Custom Backgrounds add_theme_support('custom-background'); • Visual Editor CSS add_editor_style() editor-style.css
  • 25. Guidelines (Required Hooks & Navigation) http://codex.wordpress.org/Theme_Review Tags and hooks, that are required to be included where appropriate: • wp_title(); • wp_head(); immediately before </head> • body_class(); inside <body> tag • wp_title(); • $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(); • wp_footer(); immediately before </body>
  • 26. Guidelines (Required Hooks & Navigation) http://codex.wordpress.org/Theme_Review Standard Template files: required to be called using the correct template tag. • comments.php ( via comments_template(); ) • header.php ( via get_header(); ) • footer.php ( via get_footer(); ) • sidebar.php ( via get_sidebar(); ) • searchform.php ( via get_search_form(); ) Custom Template files: required to be called • get_template_part(); or locate_template(); • Example: get_template_part( 'content', get_post_format() ); • include( get_template_directory() . '/file.php' ) must not be used to call Theme template part files.
  • 27. Guidelines (Required Hooks & Navigation) http://codex.wordpress.org/Theme_Review You also have several functions available for getting the path: • get_template_directory() File path to parent Theme directory. Returns the absolute template directory path. • get_template_directory_uri() URL path to parent Theme directory. Returns the template directory URI. • get_stylesheet_directory() File path to current Theme directory. Returns the absolute stylesheet directory path. • get_stylesheet_directory_uri() URL path to current Theme directory. Returns the stylesheet directory URI. Example: // Load up our theme options page and related code. require( get_template_directory() . '/inc/theme-options.php' )
  • 28. Guidelines (Required Hooks & Navigation) http://codex.wordpress.org/Theme_Review • Never hard-coding stylesheet/script links For Deregistering Scripts & Styles – wp_deregister_script() – wp_deregister_style() For Registering Scripts & Styles – wp_register_script() – wp_register_style() For EnqueueScripts & Styles – wp_enqueue_script() – wp_enqueue_style() • Themes are required to use core-bundled scripts, if using such scripts • Themes must not use TimThumb
  • 29. Guidelines (Required Hooks & Navigation) http://codex.wordpress.org/Theme_Review • If used, themes are required to modify the title, body class, post class through filter – wp_title() – body_class() – post_class();
  • 30. Guidelines (WordPress – Generated CSS Classes) http://codex.wordpress.org/Theme_Review Themes are required to support the following WordPress-defined CSS classes, or similar elements: • Alignment Classes – aligncenter, alignleft, alignright • Caption Related Classes (Gallery) – wp-caption, wp-caption-text, gallery-caption • Post Classes – sticky • Comment Classes – bypostauthor
  • 31.
  • 32. Guidelines (Template Files) http://codex.wordpress.org/Theme_Review • Required – index.php – comments.php – screenshot.png • Recommended 4:3 W:H ratio, size 600x450px (2x the previous 300x225px, to account for Retina displays). – style.css Note: Child Themes may include less than this, since they depend on functionality of the parent theme.
  • 33. Guidelines (Template Files) http://codex.wordpress.org/Theme_Review • Recommended – 404.php – archieve.php – page.png – search.css – single.php – header.php – footer.php – sidebar.php • Note header.php, footer.php, and sidebar.php include variations such as: sidebar-left.php, sidebar-right.php, sidebar-footer.php, etc.
  • 34. Guidelines (Security & Privacy) http://codex.wordpress.org/Theme_Review • Unique Prefix • If used theme options panel, required to implement Theme Options and Theme Setting page. • Use the add_theme_page() function to add the Theme Settings Page rather than using add_menu_page() to add a top-level menu. • Required to use the edit_theme_options capability rather than rely on a role. • Use single array to save theme option. • Themes are required to use esc_attr() for text inputs , esc_html() for textareas, esc_url() for url, esc_js() for javascript. • Use validate and sanitize all untrusted data. http://codex.wordpress.org/Data_Validation
  • 35. Guidelines (Theme Documentation) http://codex.wordpress.org/Theme_Review • 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, using Plugin readme.txt markdown. • In lieu of a readme.txt file, Themes are recommended to include a changelog, indicating version-to-version Theme changes.
  • 36. For Theme Reviewer: After All Theme Checks (Leave your Comment in Trac) • After all theme checks • You just leave a comment as Suggested for Approved or Suggest for Not-Approved • Then leave the comment of Each Test Issues if any • Suggest the way to fix the issues • After enough checks ideally 10 an above, you will be assigned as Reviewer. You can also ask admin team to make you reviewer. • After you are assign as Reviewer, you can assign and close ticket independently.
  • 37. For Theme Developer: After All Theme Checks (Upload your Theme To WordPress.org) • After all these Test • zip your theme • Upload your theme to WordPress.org Theme Repository at http://wordpress.org/extend/themes/upload • Wait for your theme to get approved and listed in WordPress.org Theme Repository at http://wordpress.org/extend/themes/
  • 38. Questions? Thanks Sakin Shrestha Blog: http://sakinshrestha.com Email: sakin@catchinternet.com Twitter: @sakinshrestha