插件路由
默认情况下我们的插件前台访问地址是
http://xxxx.com/addons/插件名称/控制器/操作方法
例如访问demo插件的Index控制器,index操作方法,那么地址如下:
http://xxxx.com/addons/demo/index/index
自定义路由
我们可以通过自定义路由实现个性化插件访问,有自动自定义路由或手动自定义路由方式。
路由参考链接:https://www.kancloud.cn/manual/thinkphp6_0/1037495
注意:2.1.220220版本暂时只能手动写路由。
手动写路由
如下,定义好后浏览器访问:http://xxxx.com/ceshi ,就能去到demo插件下的Index控制器下的index操作方法
/** * 插件初始化 */public function addonsInitHook(){ $execute = '\\think\\addons\\Route::execute'; // url地址,即浏览器输入的地址 \think\facade\Route::rule('/ceshi', $execute) ->append([ 'addon' => 'demo',// 插件名称 'controller' => 'index',//控制器 'action' => 'index' //操作方法 ]);}
自动导入路由文件
在插件根目录下新建route.php
文件,路径为:addons/插件名称/route.php
示例如下:定义好后浏览器访问:http://xxxx.com/ceshi ,就能去到demo插件下的Index控制器下的index操作方法。
<?phpreturn [ // url地址=>插件名称/控制器/操作方法 'ceshi'=>'demo/index/index'];
域名形式
下面绑定了两个域名,那么访问地址是:http://demo.xxxx.com/ceshi,以及http://local.xxx.com/ceshi
<?phpreturn [ [ 'domain' => 'demo', 'rule' => [ 'ceshi'=>'demo/index/index' ] ], [ 'domain' => 'local', 'rule' => [ 'ceshi'=>'demo/index/index' ] ]];
若要实现动态,例如给到用户来配置路由,那么你在这个文件里面可以查询数据库,按如上数组格式返回即可
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 lecms, classcms, fastadmin, pbootcms, phpcms, eyoucms, yzmcms, xunruicms, jizhicms, wordpress, hkcms, yzncms, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。