yourls / composer-installer
YOURLS的专用Composer安装器,用于YOURLS插件
Requires
- composer-plugin-api: ^1.0
- symfony/thanks: ^1.2
- wikimedia/composer-merge-plugin: ^1.4
Requires (Dev)
- composer/composer: ^1.0
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-09-22 01:51:35 UTC
README
在YOURLS更新时保持跟踪通过Composer添加的插件和自定义包的
user/composer.json
文件。
简而言之:
composer add-plugin joecool/super-yourls-plugin
🚧 进行中。
前言:使用Composer安装YOURLS
使用Composer安装YOURLS已经内置,不需要特殊设置。只需这样做:
$> composer create-project yourls/yourls path/to/install
(例如,在空目录中composer create-project yourls/yourls .
)
请注意,这仅仅是将在指定目录中下载最新的YOURLS版本。之后,您需要正确安装YOURLS(请参阅yourls.org/#Install)
安装插件
作为用户,您只需在您的user/composer.json
中添加插件即可。
{ "require": { "joecool/super-plugin": "^1.0" } }
更简单的是,在命令行中,只需输入
$> composer add-plugin joecool/superplugin
这将插件下载到user/plugins/superplugin
,并透明地在YOURLS的vendor
目录中安装任何依赖项。
这个特定的YOURLS插件必须在Packagist上列出。如果不是这种情况,请提醒您最喜欢的插件开发人员将其列出。更好的是,在他们的存储库上打开一个简单的Pull Request以帮助他们这样做:见下文。
💡 尝试自己
$> composer add-plugin ozh/example-plugin
使YOURLS插件兼容
作为插件开发者,这是一个简单的两步操作:添加一个composer.json
并将您的插件在Packagist上列出。就是这样。
1. 在您的插件中添加一个composer.json
首先,您的插件必须要求PHP 7.2+
composer.json
告诉Composer关于您的插件的所有信息。重要部分是"type": "yourls-plugin"
和将此安装器"yourls/composer-installer"
作为依赖项
一个极简的composer.json
示例如下
{ "name": "ozh/example-plugin", "description": "Example of a YOURLS plugin installable with Composer", "type": "yourls-plugin", // <-- THIS "require": { "php": ">=7.2", "yourls/composer-installer": "^1.0" // <-- AND THIS } }
当然,您的插件可以利用所有Composer功能并使用任何包:只需将它们列为附加依赖项即可
{ "name": "joecool/awesome-plugin", "description": "This plugin does this and that", "type": "yourls-plugin", "license":"MIT", "require": { "php": ">=7.2", "yourls/composer-installer": "^1.0", "google/auth": "^2.3", "twilio/sdk": "^2.0", " } }
在这种情况下,您的插件的附加依赖项将放置在YOURLS的includes/vendor
💡 简单示例
请参阅https://github.com/ozh/example-plugin/
2. 在Packagist上列出
这一步非常直接,请访问https://packagist.org.cn/packages/submit并按照说明操作。
如果您对Composer一无所知,他们的关于页面是一篇值得阅读的文章。
好处
使YOURLS插件与这个Composer自定义安装器兼容非常简单,并且优化了资源。
- 如果有几个插件使用相同的库,比如
endroid/qr-code
,这个库将只安装一次在YOURLS中,并可供所有插件使用。 - 这使得网站管理员可以快速搭建YOURLS网站:只需一行简单的命令即可安装所有内容:
composer create-project yourls/yourls; composer require ozh/stuff slayer/pentagram
- 这使得插件开发者和插件用户更新插件变得更加容易
致谢
大部分自定义安装器代码来自项目 Kirby。非常感谢他们。
许可证
MIT。你想用这个干啥就干啥。