Я вижу много расширений, которые заставляют вас регистрироваться перед просмотром продуктов и т. Д., Но я хочу ограничить доступ к определенной странице, которую я создал, создав новую информационную страницу. Это возможно? Я также не очень разбираюсь в php, поэтому, пожалуйста, скажите мне, какие файлы мне нужно редактировать и где. Заранее спасибо.
Попробуйте добавить это вверху контроллера / информации / информации.php сразу после объявления функции index () и замените {ID} идентификатором страницы, на которую вы хотите защитить пароль (вы можете получить идентификатор из URL-адреса, или если у вас есть URL-адреса SEO, из раздела admin).
if (isset($this->request->get['information_id']) && $this->request->get['information_id'] == '{ID}') { //If the information_id is provided and it matches the ID you wish to protect if (!$this->customer->isLogged()) { //If the customer is not logged in already, redirect them to the login page //Use $this->session->data['redirect'] to redirect them back to this page after logging in $this->session->data['redirect'] = $this->url->link('information/information', 'information_id=' . $this->request->get['information_id']); //Do the redirect $this->redirect($this->url->link('account/login', '', 'SSL')); } }
Я предположил, что информационная страница не использует SSL в приведенном выше примере, вам нужно изменить ее, если она есть.
Если вы путаетесь, куда это должно идти, посмотрите на контроллер / account / account.php – я взял этот код и изменил его для конкретной информационной страницы.