This is a fork of WPackagist.org that aims to provide an up-to-date and highly available alternative and to contribute patches upstream. Feel free to use our repository by changing your repository URL in
composer.json
to https://wpackagist.wpsv.se/
This is the repository for wpackagist.wpsv.se which allows WordPress plugins and themes to be managed along with other dependencies using Composer.
More info and usage instructions at wpackagist.wpsv.se or follow us on Twitter @WPSverige.
For support and discussion, please use the issue tracker above.
Example composer.json:
{
"name": "acme/brilliant-wordpress-site",
"description": "My brilliant WordPress site",
"repositories":[
{
"type":"composer",
"url":"https://wpackagist.wpsv.se/"
}
],
"require": {
"aws/aws-sdk-php":"*",
"wpackagist-plugin/akismet":"dev-trunk",
"wpackagist-plugin/wordpress-seo":">=7.0.2",
"wpackagist-theme/hueman":"*"
},
"autoload": {
"psr-0": {
"Acme": "src/"
}
}
}
This does not provide WordPress itself.
See https://github.com/fancyguy/webroot-installer or https://github.com/johnpbloch/wordpress.
WPackagist implements the wordpress-plugin
and wordpress-theme
Composer Installers (https://github.com/composer/installers).
It essentially provides a lookup table from plugin name to WordPress.org SVN repository. Plugin versions correspond to different tags in their repository, with the special dev-master
version being mapped to trunk
.
The lookup table is provided as many static JSON files. The entry point to these files can be found at https://wpackagist.org/packages.json. Each plugin and theme has its own JSON file detailing its versions; these can be found in https://wpackagist.org/p/wpackagist-plugin/ and https://wpackagist.org/p/wpackagist-theme/.
- Make sure you have PDO with sqlite support enabled.
- Make sure
data
is writable. Do NOT createdata/packages.sqlite
, it will be created automatically. - Run
composer install
. - Point your Web server to
web
. A.htaccess
is provided for Apache.
The first database fetch may easily take 30-60 minutes, be patient.
bin/cmd refresh
: Query the WordPress.org SVN in order to find new and updated packages.bin/cmd update
: Update the version information for packages identified in1
. Uses the WordPress.org API.bin/cmd build
: Rebuild all.json
files inweb/
.
The CRON job runs the three commands above. We recommend fetching new packages every 30 minutes. Add this to your crontab to set that up:
0,30 * * * * cd /var/www/your-wpackagist-location && ./run-cron.sh >> /var/log/wpackagist-update.log