1. Go to this page and download the library: Download webshr/wp-update-server library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
webshr / wp-update-server example snippets
declare(strict_types=1);
use Webshr\WpUpdateServer\Support\Env;
$storageDir = Env::string('WP_UPDATE_SERVER_STORAGE_DIR', 'storage');
return [
// Canonical base URL (can be overridden by env `WP_UPDATE_SERVER_BASE_URL`)
'baseUrl' => Env::string('WP_UPDATE_SERVER_BASE_URL', 'http://localhost:8000/'),
// Local paths (relative to project root)
'storageDir' => $storageDir,
'cacheDir' => Env::string('WP_UPDATE_SERVER_CACHE_DIR', $storageDir . '/cache'),
'packageDir' => Env::string('WP_UPDATE_SERVER_PACKAGE_DIR', $storageDir . '/packages'),
'packageAssetDir' => Env::string('WP_UPDATE_SERVER_PACKAGE_ASSET_DIR', 'public/package-assets'),
'logDir' => Env::string('WP_UPDATE_SERVER_LOG_DIR', $storageDir . '/logs'),
// Signed download configuration (toggle with env var)
'signDownloads' => Env::bool('WP_UPDATE_SERVER_SIGN_DOWNLOADS', false),
'downloadSecret' => Env::string('WP_UPDATE_SERVER_SECRET'),
// Defaults for caches, signatures and rate limiting
'defaultCacheTtl' => Env::int('WP_UPDATE_SERVER_CACHE_TTL', 3600),
'downloadSignatureTtl' => Env::int('WP_UPDATE_SERVER_DOWNLOAD_SIGNATURE_TTL', 900),
'downloadLimit' => Env::int('WP_UPDATE_SERVER_DOWNLOAD_LIMIT', 60),
'downloadWindowSeconds' => Env::int('WP_UPDATE_SERVER_DOWNLOAD_WINDOW_SECONDS', 3600),
// Optional reverse proxy support. Forwarded IP headers are ignored unless REMOTE_ADDR matches this list.
'trustedProxies' => Env::list('WP_UPDATE_SERVER_TRUSTED_PROXIES'),
'trustedProxyHeaders' => Env::list(
'WP_UPDATE_SERVER_TRUSTED_PROXY_HEADERS',
['CF-Connecting-IP', 'X-Forwarded-For', 'X-Real-IP']
),
// Rotate JSON log files by size.
'logMaxBytes' => Env::int('WP_UPDATE_SERVER_LOG_MAX_BYTES', 10485760),
];