🎯 ThinkPlugsCenter

Latest Stable VersionTotal DownloadsMonthly DownloadsDaily DownloadsPHP VersionLicense

ThinkPlugsCenterThinkAdmin 的插件服务管理中心,用于提供插件入口、插件信息展示和菜单接入。当前 composer.json 要求 PHP >7.1,依赖 ext-jsonthink-installthink-library,并通过 src/helper.php 注册 plguri()random_bgc() 两个辅助函数。

🚀 主要功能

  • 插件入口: 提供统一的插件中心入口,集中展示已安装插件
  • 信息展示: 读取插件 Composer 元信息和插件配置,展示插件名称、文档和授权信息
  • 菜单接入: 安装迁移会写入插件中心菜单入口,便于从后台访问
  • 内网支持: 自 v1.0.28 版本起不再加载线上插件信息

🔒 安全特性

内网环境支持

v1.0.28 版本起,该中心不再加载线上插件信息,从而确保在内网环境下安全稳定运行,无需依赖外网支持。

插件机制优化

此外,我们还对插件机制进行了优化,当前本地代码仓库以 ThinkPlugsCenter 为插件中心实现,进一步简化了插件管理流程。

📋 适用场景

该插件会写入插件中心入口菜单,但不创建业务数据表。

加入我们

我们的代码仓库已移至 Github,而 Gitee 则仅作为国内镜像仓库,方便广大开发者获取和使用。若想提交 PRISSUE 请在 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。

最近更新:
Contributors: 邹景立, Anyon