首页
留言反馈
网站导航
推荐
毒鸡汤
Search
1
非插件为typecho 文章生成微海报分享
18,938 阅读
2
主题移动端,样式下添加二级分类
15,461 阅读
3
主题 添加author page
14,770 阅读
4
主题添加移动端下边栏
12,779 阅读
5
EMlog添加评论者邮箱等级
9,122 阅读
typecho
dynamic
SuiYu
Emlog
xiuno
登录
/
注册
Search
标签搜索
代码
xiuno
php
css
typecho
评论
模板
say
js
修改教程
标签
珍惜
努力
recommend
善良
样式
调用
微笑
颜色
插件
Vincent
累计撰写
151
篇文章
累计收到
184
条评论
首页
栏目
typecho
dynamic
SuiYu
Emlog
xiuno
页面
留言反馈
网站导航
推荐
毒鸡汤
搜索到
1
篇与
的结果
2021-07-04
xiunoBBS后台插件排序方法--启用的排前面
xiunoBBS后台插件默认是按照插件路径排序,也可以理解为按照插件作者(英文缩写)排序但是后台看起来就有点乱,找自己启用的插件要翻老半天先上排序后的效果,有没有变清爽:排序方法这个效果功能懒得开发成插件,而且几乎为必备修改,直接改源码将文件/model/plugin.func.php第53行的plugin_init()函数修改为以下代码,同时增加函数array_sort()即可,完整代码如下:// 在安装、卸载插件的时候,需要先初始化 function plugin_init() { global $plugin_srcfiles, $plugin_paths, $plugins, $official_plugins; $plugin_paths = glob(APP_PATH.'plugin/*', GLOB_ONLYDIR); if(is_array($plugin_paths)) { foreach($plugin_paths as $path) { $dir = file_name($path); $conffile = $path."/conf.json"; if(!is_file($conffile)) continue; $arr = xn_json_decode(file_get_contents($conffile)); if(empty($arr)) continue; $plugins[$dir] = $arr; // 额外的信息 $plugins[$dir]['hooks'] = array(); $hookpaths = glob(APP_PATH."plugin/$dir/hook/*.*"); // path if(is_array($hookpaths)) { foreach($hookpaths as $hookpath) { $hookname = file_name($hookpath); $plugins[$dir]['hooks'][$hookname] = $hookpath; } } // 本地 + 线上数据 $plugins[$dir] = plugin_read_by_dir($dir); } //插件排序,依赖于自定义函数array_sort() $plugins = array_sort($plugins,'installed','desc'); $plugins = array_sort($plugins,'enable','desc'); } } //二维数组排序 function array_sort($arr,$keys,$type='asc'){ $keysvalue = $new_array = array(); foreach ($arr as $k=>$v){ $keysvalue[$k] = $v[$keys]; } if($type == 'asc'){ asort($keysvalue); }else{ arsort($keysvalue); } reset($keysvalue); foreach ($keysvalue as $k=>$v){ $new_array[$k] = $arr[$k]; } return $new_array; }
2021年07月04日
803 阅读
0 评论
4 点赞