rah / rah_blobin
Requires
- php: >=5.2.2
- textpattern/installer: *
- textpattern/lock: >=4.5.0,<4.7.0
This package is auto-updated.
Last update: 2022-04-24 16:58:00 UTC
README
这已被弃用并由 textpattern/installer 替换。 虽然它从未有过任何稳定的版本,但源代码库仍然保留,以避免破坏可能正在使用此包的项目。
从项目和 Composer 的供应商目录加载 Textpattern 插件。与默认插件缓存功能不同,rah_blobin 支持通常从编译包安装的插件所期望的所有功能;插件生命周期回调、安装程序、卸载程序、更新程序、激活器、选项面板、加载顺序配置、翻译文件、加载类型以及 require 和 include 语句。
Rah_blobin 通过为项目中的每个插件或 PSR-0 兼容的供应商目录创建占位符加载插件来实现。然后这些加载器引用源文件,将静态源文件中的资产作为正常插件加载。Textpattern 看到的只是一个正常插件,这是一个完全受支持的插件,可以使用任何它们拥有的功能。这些插件也可以从本机插件面板进行管理和禁用。
安装
使用 Composer
$ composer.phar require rah/rah_blobin
可能性
Rah_blobin 允许您享受插件缓存目录的优势以及通常安装的插件包的强大、简单和兼容性。它允许您直接编辑和修改源文件,将插件置于版本控制系统(如 git 或 SVN)之下,或通过包和依赖管理器(如 Composer)处理安装。
基本原理
Rah_blobin 使用并支持 manifest.json 插件源结构。manifest.json 是由 MassPlugCompiler 使用和编译的结构。Rah_blobin 的工作原理的核心是 manifest 文件,manifest.json。此元文件描述了插件是什么以及它是如何构建的,占位符加载器随后基于此构建,反映了 manifest 文件中定义的所有属性。
内部结构
从项目目录中查找插件
Rah_blobin 递归地拾取项目目录中的插件。这意味着它支持嵌套和深层文件结构,这也允许它支持 Composer 的供应商目录和 PSR-0 结构。它通过搜索 manifest.json 文件来查找插件。任何找到 manifest.json 文件的目录都被视为一个插件。
处理文件和创建加载器
在找到manifest.json文件后,它会处理并解析内容。使用manifest文件构建插件,并收集所需源文件和翻译文件引用。然后,根据这些信息将加载插件写入数据库。每个插件将获得自己的加载器,其中包含插件在正常从包中安装后所包含的所有元信息。与普通插件相比,不同之处在于它不是将源代码复制到数据库中,而是引用源文件。这意味着您可以编辑源文件本身,更改将立即生效。
插件生命周期、更新程序和安装程序
当manifest.json文件中的版本号更改时,将运行更新程序和安装程序。这在未来可能变为每次导入运行任务时都进行。
禁用和卸载插件
可以从Textpattern的插件面板中禁用插件。卸载可以通过将uninstall
属性添加到manifest文件中完成,或者通过从插件面板中正常卸载插件,然后从您的项目目录中删除其源目录来实现。