V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yxx1993
V2EX  ›  PHP

Laravel-Plugin 基于 Laravel 的插件机制解决方案

  •  
  •   yxx1993 · 317 天前 · 1092 次点击
    这是一个创建于 317 天前的主题,其中的信息可能已经有所发展或是发生改变。

    介绍

    Laravel Plugin 是为需要构建自己生态的开发者提供的插件机制解决方案,使用它您可以构建类似 wordpress 的生态。它能为您提供的帮助如下:

    • 基于服务注册的方式去加载插件。
    • 通过命令行的方式,插件开发者可以方便快捷的构建插件,上传插件到插件市场。
    • 提供插件 composer 包支持。在创建的插件中单独引用 composer 。
    • 以事件监听的方式,执行插件安装,卸载,启用,禁用的逻辑。方便开发者进行拓展。
    • 插槽式的插件市场支持,通过修改配置文件,开发者可以无缝对接到自己的插件市场。
    • 自带一个基本的插件市场,开发者可以上传插件,并对插件进行审核。
    • 支持插件多版本。

    文档地址

    欢迎在 GitHub Star Laravel-Plugin

    场景

    想做一个开源版本的 erp ,开源版本只有简单的进销存功能,我希望用户可以以插件的形式购买我的生成加工,财务核算,数据报表等功能。这样以开源的形式还可以盈利。同样如果你做一款开源商城,cms 同样可以用 Laravel-Plugin 构建你的插件生态。

    快速制作并上传你的第一个插件

    安装好 Laravel-Plugin 以后,在命令输入 php artisan plugin 查看所有可用指令。

    Laravel-Plugin 基于 Laravel 的插件机制解决方案

    创建插件

    通过 php artisan plugin:make test 创建你的插件 test 。

    注册

    插件创建好以后,我们需要注册一个账号才可以上传。我们有两种注册方式

    • 通过执行 php artisan plugin:register 注册。
    • 插件市场 注册

    上传

    注册完成以后执行 php artisan plugin:upload test 就将 test 插件上传到插件市场了。

    Laravel-Plugin 基于 Laravel 的插件机制解决方案

    查看上传的插件

    插件市场 登录以后,点击插件管理就可以看到刚刚上传的插件。

    Laravel-Plugin 基于 Laravel 的插件机制解决方案

    审核发布

    插件市场工作人员在后台审核以后,你的插件就可以发布到 插件市场 给他人下载使用了

    Laravel-Plugin 基于 Laravel 的插件机制解决方案

    命令行下载

    在命令行登录以后,你可以通过执行 php artisan plugin:download 下载插件

    Laravel-Plugin 基于 Laravel 的插件机制解决方案

    以上介绍了怎么通过 Laravel-Plugin 快速发布你的第一个插件。如果你想对 Laravel-Plugin 有更多的了解,建议仔细阅读 Laravel-Plugin 文档

    插件市场

    使用 Laravel-Plugin ,默认链接的是我这边用 laravel + vue3 + tailwincss 写的一个基础插件市场,在 Laravel-Plugin 文档 介绍了怎么自定义你自己的插件市场,当然,你也可以找我购买插件市场,后续中我会不断完善插件市场功能。

    交流讨论

    Laravel-Plugin 基于 Laravel 的插件机制解决方案

    4 条回复    2022-01-20 22:13:13 +08:00
    lyhiving
        1
    lyhiving  
       317 天前
    主要是 B 端生态打开是有点难度的,但是打开后,就是真的吃肉
    mingyoung
        2
    mingyoung  
       316 天前
    又构建一个生态……
    JaguarJack
        3
    JaguarJack  
       316 天前
    前后端分离的项目,怎么构建?
    yxx1993
        4
    yxx1993  
    OP
       315 天前
    @JaguarJack 可以构建的,laravel-mix 可以构建,我自己写了一个插件就是前后分离的,
    参考: https://github.com/youyingxiang/laravel-plugin-market/tree/plugin/Resources/assets/js
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3394 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 10:37 · PVG 18:37 · LAX 02:37 · JFK 05:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.