54 lines
1.8 KiB
PHP
54 lines
1.8 KiB
PHP
<?php
|
||
// +----------------------------------------------------------------------
|
||
// | YwxApp [ WE CAN DO IT JUST THINK ]
|
||
// +----------------------------------------------------------------------
|
||
// | Copyright (c) 2026-2036 http://ywxapp.cn All rights reserved.
|
||
// +----------------------------------------------------------------------
|
||
// | Author: ywxapp<admin@ywxapp.cn>
|
||
// +----------------------------------------------------------------------
|
||
declare (strict_types = 1);
|
||
|
||
namespace addon\blog;
|
||
|
||
use think\facade\Db;
|
||
use ywxapp\AddonBase;
|
||
|
||
/**
|
||
* Addon 类
|
||
*
|
||
* @author ywxapp <admin@ywxapp.cn>
|
||
*/
|
||
class Addon extends addon
|
||
{
|
||
/**
|
||
* 安装钩子
|
||
*
|
||
* 菜单与建表/种子数据由框架统一处理,无需在此手写:
|
||
* - 菜单:addon/blog/menu.json
|
||
* backend → wxapp_admin_power(后台权限/菜单,含 addon 归属)
|
||
* member → wxapp_user_rule(module='member',会员中心)
|
||
* frontend → wxapp_user_rule(module='frontend',前台)
|
||
* - 数据:addon/blog/install.sql(建表,框架 importsql 白名单执行)
|
||
*
|
||
* 这里仅保留插件自身的额外初始化钩子(无需可留空)。
|
||
*/
|
||
public function install()
|
||
{
|
||
return true;
|
||
}
|
||
|
||
/**
|
||
* 卸载钩子
|
||
*
|
||
* 框架 AddonService::deleteMenu() 只清理 admin_power,
|
||
* 这里补清 user_rule 中本插件的前端/会员菜单(按 name 前缀),避免残留。
|
||
* 采用物理删除,防止软删除后唯一键 name 冲突导致重装失败。
|
||
*/
|
||
public function uninstall()
|
||
{
|
||
Db::execute("DELETE FROM wxapp_user_rule WHERE name LIKE 'blog:%'");
|
||
Db::execute("DELETE FROM wxapp_admin_power WHERE addon='blog'");
|
||
return true;
|
||
}
|
||
}
|