每次我安装一个新的扩展,我得到这个错误:
错误:您没有权限访问此页,请咨询您的系统管理员。
我已经去了系统>用户组,并添加权限到新的扩展模块(访问权限和修改权限),但没有运气。
我试图安装"2checkout" "Ajax快速CheckOut" ",并得到相同的错误。
很可能您正在尝试安装与OpenCart 2.3.0.2不兼容的扩展。OpenCart 2.3。X引入了一些与扩展结构相关的更改,因此您必须先进行这些更改
路径变化:
所有的扩展类型现在已经移动到一个名为extension
的新目录下。
例如,如果你有一个付款扩展,那么它的旧结构看起来像:
admin/controller/payment/xxx.php
admin/model/payment/xxx.php
admin/language/en-gb/payment/xxx.php
admin/view/template/payment/xxx.php
现在你必须把它改成:
admin/controller/extension/payment/xxx.php
admin/model/extension/payment/xxx.php
admin/language/en-gb/extension/payment/xxx.php
admin/view/template/extension/payment/xxx.php
模块加载路径和URL更改:
加载模块时,必须在路径中包含extension
。即$this->load->model('module/:')
变为$this->load->model('extension/module/mymod')
。
对于admin URL链接也是如此。$this->url->link('payment/mymod', 'token=' . $this->session->data['token'], 'SSL')
现在变成$this->url->link('extension/payment/mymod', 'token=' . $this->session->data['token'], 'SSL')
。
类名变化:
下一个更改与类名有关。命名为ControllerModuleMyMod
的类应该重命名为ControllerExtensionModuleMyMod
。
这些更改适用于admin
和catalog
。
线程相关的
:
- http://forum.opencart.com/viewtopic.php?f=2& t = 164930
- http://forum.opencart.com/viewtopic.php?f=183& t = 165958
可能需要修改模块中admin控制器的validate()例程:
if (!$this->user->hasPermission('modify', 'module/oldmodule')) {
}
:
if (!$this->user->hasPermission('modify', 'extension/module/oldmodule')) {
}
进入"admin - system - users -用户组"编辑您的管理员并全部选择,然后保存。