Являются ли эти страницы информационными страницами? В любом случае, вы можете настроить редирект в catalog/controller/account/account.php
(В примере используется Opencart 1.5.4.1)
Перед этой строкой:
$this->data['heading_title'] = $this->language->get('heading_title');
Добавлять:
$id = $this->customer->getCustomerGroupId();
if ($id == 1){
$this->redirect($this->url->link('custom_page1', '', 'SSL'));
}
if ($id == 2){
$this->redirect($this->url->link('custom_page2', '', 'SSL'));
}
....
Не уверен, что вы имеете в виду под правами доступа к странице. Может быть, вы можете пересмотреть свой вопрос, чтобы сделать его более ясным.
[РЕДАКТИРОВАТЬ: 2013-01-23]
Чтобы ограничить доступ к определенным информационным страницам, вы можете проверить запрошенный information_id и текущую группу пользователей, а затем вывести пользовательский контент:
в catalog/controller/information/information.php найдите строку 62:
$this->response->setOutput($this->render());
} else {
......
Добавить перед:
$id = $this->customer->getCustomerGroupId();
if ($id == 1 && $information_id == 7){
$this->data['heading_title'] = 'Not allowed.';
$this->data['description'] = 'You are not allowed to view this page';
}
Измените условие в соответствии с вашими потребностями. То же самое можно сделать и в других контроллерах, только убрать проверку information_id, конечно. Конечно, вы можете просто перенаправить пользователя на домашнюю страницу или что-то еще, вместо того, чтобы показывать собственное сообщение. Но я думаю, что это более элегантно и менее раздражает пользователя. Надеюсь это поможет.
person
B-and-P
schedule
21.01.2013