880 Star 3.6K Fork 1.5K

Discuz / DiscuzX

 / 详情

插件设计值变量加强,比如支持判断文件存在时可用的变量、只读的变量、变量分组等

待办的
成员
创建于  
2021-03-06 13:28

描述此新需求

插件设计越来越复杂,比如组件、组合式等方式形成的套系插件等,在插件设计里的变量上如果能支持只读变量、当某文件存在时可用的变量、隐藏变量、变量分组等,将会让插件设计更加灵活,可以考虑是否能支持。

新需求操作步骤

开发者模式下,后台-应用-插件列表-设计-变量-详情

为解决问题做过哪些尝试

其他信息

此为需求类ISSUE,可以考虑

评论 (4)

湖中沉 创建了任务
湖中沉 关联仓库设置为Discuz/DiscuzX
湖中沉 修改了标题
湖中沉 修改了描述
展开全部操作日志

其实插件的设置功能,是可以被插件接管走,自己处理的

其实插件的设置功能,是可以被插件接管走,自己处理的

@DiscuzX 那个就完全得靠自己建表维护了,比较麻烦。
数据直接存cache吧,万一用户把cache清了数据就没了。
所以这个还是有意义的。

@DiscuzX 那个就完全得靠自己建表维护了,比较麻烦。
数据直接存cache吧,万一用户把cache清了数据就没了。
所以这个还是有意义的。

@popcorner 不是指自己建表,使用插件原本的变量配置,source/admincp/admincp_plugins.php

if(strexists($var['type'], '_')) {
$_GET['pmod'] = $module['name'];

你可以看看附近代码,当变量类型含下划线时,表示这是开发者自定义的变量类型,插件的设置里不会显示这个设置项,而插件可以自己写个管理文件(最简单的是复制自带的去修改)去处理自己新增的变量类型(当所有插件设置项都为自定义类型时,点击“设置”会进入插件自定义的第一个管理连接),比如让插件设置支持图片上传,插件处理后数据库里保存图片地址的字符串

@popcorner 不是指自己建表,使用插件原本的变量配置,source/admincp/admincp_plugins.php

if(strexists($var['type'], '_')) {
$_GET['pmod'] = $module['name'];

你可以看看附近代码,当变量类型含下划线时,表示这是开发者自定义的变量类型,插件的设置里不会显示这个设置项,而插件可以自己写个管理文件(最简单的是复制自带的去修改)去处理自己新增的变量类型(当所有插件设置项都为自定义类型时,点击“设置”会进入插件自定义的第一个管理连接),比如让插件设置支持图片上传,插件处理后数据库里保存图片地址的字符串

@DiscuzX 原来系统支持隐藏变量名称啊……我还以为没这个功能呢。
不过这事确实应该明确一下,至少我之前是没有在文档等地方看见有这种玩法的。

但这样的话,管理文件还是需要自己来写才行,默认的变量配置实在是太弱了,导致大多数玩法都没办法用默认的配出来,这块之后还是可以考虑强化一下的。
比如加入后处理接口(postprocess,默认表单点击提交后执行,可以检查变量设置的值是否合理等)
加入变量分组分页等
这样就可以保证很多常见小插件都可以不用自己写管理文件了,开发起来可以更方便。

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(3)
134400 3dming 1578919100 134392 zoewho 1578919099
PHP
1
https://gitee.com/Discuz/DiscuzX.git
git@gitee.com:Discuz/DiscuzX.git
Discuz
DiscuzX
DiscuzX

搜索帮助