🎯 ThinkPlugsCenter
ThinkPlugsCenter 是 ThinkAdmin 的插件服务管理中心,用于提供插件入口、插件信息展示和菜单接入。当前 composer.json 要求 PHP >7.1,依赖 ext-json、think-install 和 think-library,并通过 src/helper.php 注册 plguri() 与 random_bgc() 两个辅助函数。
🚀 主要功能
- 插件入口: 提供统一的插件中心入口,集中展示已安装插件
- 信息展示: 读取插件 Composer 元信息和插件配置,展示插件名称、文档和授权信息
- 菜单接入: 安装迁移会写入插件中心菜单入口,便于从后台访问
- 内网支持: 自
v1.0.28版本起不再加载线上插件信息
🔒 安全特性
内网环境支持
自 v1.0.28 版本起,该中心不再加载线上插件信息,从而确保在内网环境下安全稳定运行,无需依赖外网支持。
插件机制优化
此外,我们还对插件机制进行了优化,当前本地代码仓库以 ThinkPlugsCenter 为插件中心实现,进一步简化了插件管理流程。
📋 适用场景
该插件会写入插件中心入口菜单,但不创建业务数据表。
加入我们
我们的代码仓库已移至 Github,而 Gitee 则仅作为国内镜像仓库,方便广大开发者获取和使用。若想提交 PR 或 ISSUE 请在 ThinkAdminDeveloper 仓库进行操作,如果在其他仓库操作或提交问题将无法处理!。
标准安装
**安装前建议尝试更新所有组件**
composer update --optimize-autoloader
composer require zoujingli/think-plugs-center --optimize-autoloader定制安装
- 复制插件 ThinkPlugsCenter 所有源代码到
plugin/think-plugs-center目录。 - 修改插件
composer.json文件追加version配置项,插件 ThinkPlugsCenter 的完整配置如下:
{
"type": "think-admin-plugin",
"name": "zoujingli/think-plugs-center",
"version": "1.0.0",
"license": "Apache-2.0",
"homepage": "https://thinkadmin.top",
"description": "Plugin center and plugin entry manager for ThinkAdmin",
"authors": [
{
"name": "Anyon",
"email": "zoujingli@qq.com"
}
],
"require": {
"php": ">7.1",
"ext-json": "*",
"zoujingli/think-install": "^1.0|@dev",
"zoujingli/think-library": "^6.1|@dev"
},
"autoload": {
"files": [
"src/helper.php"
],
"psr-4": {
"plugin\\center\\": "src"
}
},
"extra": {
"think": {
"services": [
"plugin\\center\\Service"
]
},
"plugin": {
"copy": {
"stc/database": "database/migrations"
}
},
"config": {
"type": "service",
"name": "插件应用管理",
"document": "https://thinkadmin.top/plugin/think-plugs-center.html",
"description": "插件服务管理中心,提供插件入口、插件信息展示和菜单接入。"
}
}
}- 修改项目根
composer.json配置,增加 ThinkPlugsCenter 插件本地化路径配置,完整配置如下:
{
"type": "project",
"name": "zoujingli/thinkadmin",
"version": "1.0.0",
"license": "MIT",
"homepage": "https://thinkadmin.top",
"description": "ThinkAdmin plugin aggregation and distribution project",
"keywords": [
"ThinkAdmin",
"ThinkLibrary",
"WeChatDeveloper"
],
"authors": [
{
"name": "Anyon",
"email": "zoujingli@qq.com"
}
],
"require": {
"php": ">7.1",
"ext-gd": "*",
"ext-json": "*",
"ext-openssl": "*",
"zoujingli/think-plugs-center": "^1.0"
},
"repositories": [
{
"type": "path",
"url": "plugin/think-plugs-center"
}
],
"config": {
"sort-packages": true,
"allow-plugins": {
"zoujingli/think-install": true
}
}
}- 在项目根目录终端执行
composer update完成安装。
卸载插件
composer remove zoujingli/think-plugs-center插件数据
该插件不创建独立业务数据表;安装迁移仅写入插件中心菜单入口。
服务与路由
- 服务类:
plugin\center\Service - 插件编码:
plugin-center - 服务菜单:
menu()返回空数组,插件中心入口由迁移脚本写入全局菜单 - 插件路由:
layout/<encode>使用[Index::class, 'layout']调度到plugin\center\controller\Index::layout() - 全局菜单节点:
plugin-center/index/index
版权说明
ThinkPlugsCenter 遵循 Apache2 开源协议发布,并提供免费使用。
本项目包含的第三方源码和二进制文件之版权信息另行标注。
版权所有 Copyright © 2014-2026 by ThinkAdmin (https://thinkadmin.top) All rights reserved。
