Back to repository Plugin

PluginShelf – Plugin & Theme Repository for WordPress

About this product

PluginShelf helps developers publish and manage WordPress plugins, WordPress themes, and Moodle plugins directly from their own websites.

It creates a searchable repository where visitors can explore products, check compatibility, read release information, download ZIP packages, submit reviews, and subscribe to release updates.

PluginShelf securely inspects uploaded packages and automatically detects available version, platform, compatibility, PHP, licence, and technical information without executing package code.

How It Works

  1. Install and activate PluginShelf.
  2. Open Repository → Add New.
  3. Upload the product ZIP package.
  4. PluginShelf identifies whether it is a WordPress or Moodle product.
  5. Available version and compatibility information is detected automatically.
  6. Add the product title, description, banner, features, and release notes.
  7. Publish the product.
  8. Visitors can view its details, download it, submit reviews, and subscribe to updates.
  9. Upload a newer package and change its version to notify matching confirmed subscribers automatically.

Repository Shortcode

Add this shortcode to the WordPress page where the repository should appear:

[pluginshelf]

Control items per pages as follows

[pluginshelf limit="30"]

Automatic Package Detection

PluginShelf reads supported package files without executing their PHP code.

For WordPress plugins and themes, it can detect:

  • Product name
  • Product type
  • Version number
  • Required WordPress version
  • Tested WordPress version
  • Required PHP version
  • Licence
  • Text domain

For Moodle plugins, it can detect:

  • Component name
  • Moodle plugin type
  • Release version
  • Internal build number
  • Required Moodle version
  • Supported Moodle versions
  • Incompatible Moodle versions
  • Maturity level
  • Plugin dependencies
  • Declared PHP requirements
  • Licence

When a Moodle plugin does not declare its PHP requirement, PluginShelf may derive it from the supported Moodle version and clearly identify it as an inferred requirement.

Download Tracking

Every product download passes through PluginShelf’s controlled download endpoint. The download is recorded before the ZIP package is delivered.

Download totals represent completed download requests, not unique users or confirmed installations. Repeated downloads by the same visitor may increase the total.

Ratings and Reviews

Visitors can submit:

  • A rating from one to five stars
  • An optional display name
  • An optional written review

New reviews remain pending until an authorised administrator approves or rejects them. Pending-review notifications appear in the WordPress administration area.

Approved reviews are displayed on the relevant product page with compact pagination.

Release Subscriptions

Visitors can subscribe to release updates without creating an account.

PluginShelf uses email confirmation to verify each subscription. After confirmation, subscribers can receive notifications for:

  • All repository releases
  • WordPress plugins
  • WordPress themes
  • Moodle plugins
  • An individual product

When a published product receives a new version number, PluginShelf automatically creates and sends a release notification to matching confirmed subscribers.

Administrators can search, filter, paginate, and export subscriber records from WordPress administration.

Privacy-Friendly Reporting

Optional active-install reporting can help administrators estimate which product versions remain active.

When enabled by the receiving website administrator, reporting may include:

  • A random installation identifier
  • Product version
  • WordPress version
  • Last reporting time

It does not need to transmit the website address, administrator identity, email address, or website content.

Product Renaming

Products can be renamed without losing their downloads, ratings, reviews, or subscriber relationships.

PluginShelf maintains a permanent update identifier and records previous slugs so that:

  • Old product URLs redirect to the current page.
  • Existing installations continue receiving update information.
  • Download and review statistics remain attached to the same product.
  • The current product URL remains the canonical search result.