插件信息文件:Config/App.php

<?php

return [

    'type' => 'app', // 固定app不变
    //'ftype' => 'module', // 可选,做完插件来安装模块使用
    'name' => '插件名称', // 填写插件的名字
    'author' => '迅睿程序设计', // 作者名字
    'icon' => 'fa fa-eye', // 插件图标
    //'uri' => '插件目录/控制器/方法函数', //安装后默认跳转路径

];


安装时的SQL文件:Config/Install.sql

DROP TABLE IF EXISTS `{dbprefix}app_web_log`;
CREATE TABLE IF NOT EXISTS `{dbprefix}app_web_log` (
  `id` BIGINT(18) unsigned NOT NULL AUTO_INCREMENT,
  `time` int(10) NOT NULL,
  `domain` varchar(100) NOT NULL,
  `url` varchar(255) NOT NULL,
  `param` text NOT NULL,
  `method` varchar(20) NOT NULL,
  `ip` varchar(100) NOT NULL,
  `useragent` text NOT NULL,
  `software` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `time` (`time`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='网站访客日志';

一般用于创建表,{dbprefix}表示表的前缀


卸载时的SQL文件:Config/Uninstall.sql

于安装相反,这里写删除表的语句吧

删表SQL语法

DROP TABLE删除一个或多个表。可以使用以下语法:

DROP TABLE table1_name, table2_name, ...;

在这里,table1_nametable2_name,...是要删除的表的名称。

警告:删除数据库或表是不可逆的。

因此,在使用DROP语句时要小心,因为数据库系统通常不会显示任何警告,例如“您确定删除吗?”。它将立即删除数据库或表及其所有数据。


安装后运行的程序代码:Config/Install.php

<?php

// 这里写你安装完成要干的事情,默认留空不写


插件的菜单配置:Config/Menu.php

<?php

return [

    'admin' => [

        'app' => [
            'left' => [
                'app-plugin' => [
                    'link' => [
                        [
                            'name' => '访客记录',
                            'icon' => 'fa fa-eye',
                            'uri' => 'weblog/home/index',
                        ],
                    ]
                ],
            ],
        ],

    ],
];

上面的代码是在后台插件菜单里面增加本插件的名字、图标、链接


插件版本控制文件:Config/Version.php

return [

    'version' => '2.0', // 插件版本号,两位版本号
    'license' => 'dev', // 开发的插件必须填写dev
    'updatetime' => '2015-3-5', // 更新时间

];

此文件是插件的版本控制文件,需要填写版本号和版本更新时间值


插件出现在在后台模块列表右侧配置文件:Config/Clink.php

<?php

return [

    [
        'name' => '站点权限', // 站点权限是插件的链接名称
        'icon' => 'fa fa-user', // 图标
        'color' => 'blue', // 颜色class red green blue
        'url' => SELF.'?c=bbb&m=index&mid={mid}&id={cid}', // 后台链接:对于点击的地址mid是模块目录,cid是内容id
        'murl' => SELF.'?c=bbb&m=index&mid={mid}&id={cid}', // 用户中心链接:对于点击的地址mid是模块目录,cid是内容id
        'uri' => '', // 对应的uri权限判断,后面章节会介绍权限写法
        'field' => '', // 统计数量的字段,填写模块内容的主表字段,只能填写int数字类型的字段
        //'is_verify' => 1, // 是否显示在后台审核管理里面
         'displayroder' => 10, // 排序方式,越到越靠后,v4.6.2以上支持
    ],

];

此文件配置效果如下图所示

image.png

插件出现在在后台模块列表下方的配置文件:Config/Cbottom.php

return [

    [
        'name' => '批量权限',// 批量权限是插件的链接名称
        'icon' => 'fa fa-user', // 图标
        'url' => 'javascript:;',  // 这个是单击的执行的js动作,建议使用自定义js函数
        'uri' => '', // 用于权限验证,后面章节会介绍权限写法
        'displayroder' => 10, // 排序方式,越到越靠后,v4.6.2以上支持
    ],

];

此文件配置效果如下图所示

image.png


模板的module标签或search标签循环循环条件:Config/Mwhere.php

<?php
/**
 * 针对module标签及search标签的where条件
 * $siteid 是站点id号
 * $mid 是模块目录
 * $field 模块主表的可用字段
 */

if (in_array('zhuangtai', $field)) {
    // 前台列表中只显示zhuangtai=1的数据
    return '`zhuangtai`=1';
}

// 不满足条件就不进行了
return false;

用于在前台模板列表界面的循环显示条件,比如增加一个状态字段,只显示这个状态的列表数据。


文档最后更新时间:2023-02-20 09:04:09
我来修改此文档(2) 不会操作怎么办?