Moodle Theme Submission Requirements

Refer to the following guidelines before submitting your Moodle theme.

Pricing

Pricing for Moodle themes is split into three bands. 

$20 - $25: Basic, non-responsive theme with no additional features falling outside of the core functionality
$30 - $35: Responsive design with 2 to 6 custom features that fall outside of the core functionality
$40 - $45: Responsive design with 7 or more custom features that fall outside of the core functionality

Technical Requirements

You should follow the following Moodle guides in addition to the Marketplace technical requirements listed below. 

  1. Overview of Moodle themes
  2. Moodle's guide to creating a theme

PHP

  1. Code must not have any PHP notices, warnings, or errors.
  2. No PHP short tags are allowed.
  3. Please make sure the code adheres to PEAR standards.
  4. Avoid hard-coded URIs and file paths.
  5. We strongly encourage you to always use curly braces even in situations where they are technically optional. Having them increases readability and decreases the likelihood of logic errors being introduced when new lines are added. For example, don't do:

    if ( empty( $somevar ) ) return false;

    Instead do:

    if ( empty( $somevar ) ) { return false;}

    Or in the context of a template file or other predominantly HTML file, even:

    if ( empty( $somevar ) ) : return false;endif;
     
  6. Use of the eval() function is not permitted.

HTML/CSS

  1. All author-generated HTML needs to be validated via the W3C validator. However, browser prefixes and any other cutting-edge code will be exempt.
  2. If a theme uses the HTML5 doctype, it needs to make proper use of semantic HTML5 elements.
  3. No hardcoded inline styles are allowed anywhere.
  4. IDs and classes need to be appropriately named and follow a naming convention.
  5. Use human readable selectors that describe what element(s) they style.
  6. Refrain from using over-qualified selectors; div.container can simply be stated as .container.
  7. Keep media queries grouped by media at the bottom of the stylesheet.

JavaScript

  1. JavaScript code should be placed in external files whenever possible.
  2. JavaScript files need to be placed in the footer where possible, barring notable exceptions, for example: Modernizr, jQuery UI, etc.
  3. The code shouldn't raise any errors or notices.
  4. All JavaScript should be written with "use strict" mode on. For example, you can do this with jQuery as follows:

    ( function($) { "use strict"; // Author code here })(jQuery);

Documentation Requirements

Written documentation is required to help buyers with installation and setup.

  • The full installation process of the theme must be documented 
  • All required extensions must be documented in your item description and documentation file 
  • Custom features falling outside Moodle’s core functionality must be clearly documented.
2 votes
This article was helpful
This article was not helpful

Contacting Support

You can submit tickets for any Envato website through this system. However, please search our Knowledgebase before you submit a ticket.

Open a Ticket
Help Desk Software by Kayako Resolve