https://github.com/gioxx/yourls-pluginmanager
Install, update and manage YOURLS plugins directly from the admin interface.
https://github.com/gioxx/yourls-pluginmanager
php yourls yourls-plugin
Last synced: 8 days ago
JSON representation
Install, update and manage YOURLS plugins directly from the admin interface.
- Host: GitHub
- URL: https://github.com/gioxx/yourls-pluginmanager
- Owner: gioxx
- License: mit
- Created: 2025-05-26T14:33:46.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2026-06-04T16:10:59.000Z (9 days ago)
- Last Synced: 2026-06-04T17:11:55.995Z (9 days ago)
- Topics: php, yourls, yourls-plugin
- Language: PHP
- Homepage: https://yourls.gioxx.org/plugins/plugin-manager
- Size: 209 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# ๐ YOURLS Advanced Plugin Manager
[Readme file is also available in italian](README_IT.md).
[](https://github.com/gioxx/YOURLS-PluginManager/releases)
[](LICENSE)
**Install, update and manage YOURLS plugins directly from the admin interface.**
Just feed it a GitHub URL and it handles the rest ๐งโโ๏ธ
---
## ๐ Features
- ๐งฒ Install plugins from any public GitHub repo (release or tag)
- ๐ Auto-overwrite existing plugin folder (works like "update")
- โฑ๏ธ Automatic update checks every 24 hours (plus manual on-demand checks)
- ๐ค Auto-associates repository metadata from `Plugin URI` (when valid GitHub URLs are available)
- โ
Verifies `plugin.php` structure before installing
- ๐ Supports GitHub Personal Access Token (to avoid API limits)
- ๐ฆ Extracts ZIP via `ZipArchive` (no dependencies)
- ๐ Shows version, author, status, and last update time
- ๐ Associate/Change repo via dedicated modal UI (with pre-filled URL on change)
- ๐งผ Can delete inactive plugins safely
- ๐ฌ Fully translatable (`.po/.mo` ready โ Italian included ๐ฎ๐น)
---
## ๐ง Requirements
- PHP with [`ZipArchive`](https://www.php.net/manual/en/class.ziparchive.php) extension (default in most hosting)
- YOURLS 1.8+
---
## ๐ ๏ธ Installation
1. Clone or download this repo
2. Copy the folder `yourls-plugin-manager` into your `user/plugins/` directory
3. (Optional) Create a `/languages` folder and add `.mo` translations
4. Activate the plugin from the YOURLS admin interface
5. Go to **Tools > Advanced Plugin Manager** to start using it!
---
## โน๏ธ Update Metadata Note
Plugins installed **before** repository metadata tracking was introduced may temporarily show **"No repository metadata"**.
To enable update checks and one-click updates for those plugins, reinstall or update each one once via Advanced Plugin Manager.
Default YOURLS plugins do not require repository association, and the UI now reflects this explicitly.
---
## ๐ Whatโs New in 1.1.5
- Self-update notifications:
- the plugin now checks its own GitHub releases and shows a dashboard notice when a newer version is available
- the plugin page title now shows an update badge when applicable
## ๐ Whatโs New in 1.1.4
- Delete flow hardened:
- automatic deletion now reports the exact plugin directory when YOURLS cannot remove it
- the admin can delete that folder manually on the server
## ๐ Whatโs New in 1.1.3
- Install flow hardened:
- automatic extraction now runs only when `user/plugins` is writable by PHP
- when permissions are missing, the plugin stops with a clear message and a direct ZIP download link for manual installation
## ๐ Whatโs New in 1.1.2
- Minor consistency fix:
- unified product naming across plugin metadata, UI copy, translations, and docs to **YOURLS Advanced Plugin Manager**
## ๐งพ Previous highlights (1.1.1)
- UI naming updates:
- plugin menu entry is now **Advanced Plugin Manager**
- page title is now **YOURLS Advanced Plugin Manager**
- Plugin submenu quality of life:
- plugin admin sublinks under **Manage Plugins** are now sorted alphabetically
- Installed plugins header actions:
- added a **Manage** button that links directly to YOURLS native plugin management page (`admin/plugins.php`)
- action buttons are now visually consistent
- **Update all available** is disabled when no updates are available
- New integrated settings feature:
- built-in `admin_view_per_page` customization (no separate plugin needed)
- if legacy plugin **Custom number of displayed links** is detected, an in-panel warning suggests deactivating/removing it
- credit: based on the snippet shared by **ozh** in YOURLS issue #2339: https://github.com/YOURLS/YOURLS/issues/2339#issuecomment-352127623
---
## ๐ GitHub API Tips
By default, GitHub allows **60 unauthenticated requests/hour per IP**.
To increase the limit to **5000 req/hour**, use a **[GitHub Personal Access Token](https://github.com/settings/tokens/new)** (no scopes needed).
---
## ๐ Localization
- English (`en_US`) โ default
- Italian (`it_IT`) โ included
You can contribute other translations by forking and submitting `.po`/`.mo` files to the `languages/` folder.
---
## ๐ค Example Plugin URLs
You can paste any of these into the GitHub URL field:
- `https://github.com/gioxx/YOURLS-LogoSuite`
- `https://github.com/YOURLS/antispam`
The plugin will automatically fetch the latest release or fallback to the latest tag.
---
## ๐งฉ Plugin Compatibility
To make your YOURLS plugin compatible with **Advanced Plugin Manager**, follow these simple guidelines:
### โ๏ธ What to do
- **Create a release** on your GitHub repository.
This will generate a `.zip` package that Advanced Plugin Manager can detect and download.
- Ensure your `plugin.php` file is:
- in the **root** of the ZIP, **or**
- in a **single subfolder** along with the rest of your plugin files.
### โ What to avoid
- Do not leave your repository in a flat layout without a release:
in this case, Advanced Plugin Manager will **not find any installable content**.
- Avoid deeply nested folders like `your-plugin/another-folder/plugin.php`.
### ๐ฆ Example structure
```text
your-plugin/
โโโ plugin.php
โโโ readme.md
โโโ ...
```
Then publish a release starting with the link: https://github.com/tuo-utente/tuo-plugin/releases/new (replace your-user and your-plugin with the correct informations).
---
## ๐ License
This plugin is licensed under the [MIT License](LICENSE).
It uses only native PHP features โ no bundled third-party code or copyleft libraries.
---
## ๐ฌ About
Lovingly developed by the usually-on-vacation brain cell of [Gioxx](https://github.com/gioxx), using Codex to speed up some of the development and correct some rubbish.
---
## ๐ค Contributing
Pull requests and feature suggestions are welcome.
If you find bugs or have feature requests, [open an issue](https://github.com/gioxx/YOURLS-PluginManager/issues).
If you find it useful, leave a โญ on GitHub! โค๏ธ