Download the PHP package apermo/wp-update-server without Composer

On this page you can find all versions of the php package apermo/wp-update-server. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package wp-update-server

WP Update Server

Packagist Version PHP Version License codecov

A self-hosted update API for WordPress plugins and themes, compatible with the Plugin Update Checker library and Composer.

Originally forked from YahnisElsts/wp-update-server, now independently maintained with a modernized codebase.

Features

Requirements

Quick Start

1. Install

Or download the latest release and upload to your server. Composer is optional — a built-in PSR-4 autoloader handles class loading without it.

2. Configure

Edit config.php to your needs. All settings are optional — the server works with sensible defaults.

3. Add packages

Create the versioned directory structure and drop your ZIP files:

The ZIP must contain a single top-level directory matching the slug, with a valid Plugin Name: or Theme Name: header inside.

4. Verify

You should see a JSON response with the plugin metadata.

Integrating with Plugins

Use the Plugin Update Checker library:

Updates will appear in the WordPress Dashboard just like plugins from WordPress.org.

Tip: Create a readme.txt following the WordPress.org standard to populate the "View details" modal.

Integrating with Composer

Point Composer at your server as a repository:

Composer requests /packages.json on the repository URL. This requires a web server rewrite rule to route the request through index.php — see Web Server Configuration below.

The vendor prefix is configurable in config.php (default: wpup).

Authenticated Composer access

For packages that require a license key, Composer authenticates via its native auth.json mechanism. The server accepts Bearer tokens from the Authorization header, which Composer sends automatically when configured:

This stores the token in auth.json (not composer.json, so it stays out of version control):

Enable license authentication on the server side in config.php:

API Reference

Endpoint Method Description
?action=get_metadata&slug=X GET Package metadata (JSON)
?action=get_metadata&slug=X&version=1.0.0 GET Metadata for a specific version
?action=get_metadata&slug=X&channel=beta GET Latest version for a stability channel
?action=download&slug=X GET Download the latest stable ZIP
?action=download&slug=X&version=1.0.0 GET Download a specific version
?action=composer_packages GET Composer packages.json
?action=upload POST Upload a new package version (requires API key)

Configuration

Copy config.sample.php to config.php. Key options:

See config.sample.php for the full reference.

Web Server Configuration

The Composer integration requires /packages.json to be routed through index.php. A matching .htaccess is included for Apache. For other web servers, add the equivalent rewrite rule.

Apache / LiteSpeed

The included .htaccess handles this automatically. Ensure mod_rewrite is enabled:

LiteSpeed is fully compatible with Apache .htaccess rewrite rules — no additional configuration needed.

nginx

Add a location block to your server configuration:

Extending the Server

Create a subclass and override any method:

Common extension points:

Logging

All requests are logged to logs/request.log:

Enable IP anonymization and log rotation in config.php.

Development

Migrating from v2.x

See docs/migration.md for a step-by-step upgrade guide including a shell script to migrate packages from the flat layout to the versioned directory structure.

Credits

Originally created by Yahnis Elsts. Now independently maintained by Christoph Daum.

License

MIT


All versions of wp-update-server with dependencies

PHP Build Version
Package Version
Requires php Version >=8.0
ext-json Version *
ext-zip Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package apermo/wp-update-server contains the following files

Loading the files please wait ...