admin Опубликовано 17 марта, 2022 Поделиться Опубликовано 17 марта, 2022 Процесс доработки внешнего вида того или иного интернет — магазина на opencart — процесс несомненно веселый и увлекательный. Каждый заказчик уникален в своих запросах и требованиях, и порою приходится вносить довольно специфические правки в шаблон. Зачастую бывает такое, что для разных страниц необходимо применить уникальную стилистику и оформление, чтобы она не пересекалась с другими страницами магазина. Хорошим решением в данном случае является назначение уникального класса тегу <body>. И сделать это можно достаточно просто. В контроллере header.php, которой находится по адресу \catalog\controller\common\header.php необходимо добавить немного кода. Вам необходимо найти следующие строчки if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/header.tpl')) { return $this->load->view($this->config->get('config_template') . '/template/common/header.tpl', $data); } else { return $this->load->view('default/template/common/header.tpl', $data); } И сразу перед ними добавить следующий код // Добавление класса страницы if (isset($this->request->get['route'])) { if (isset($this->request->get['product_id'])) { $class = '-' . $this->request->get['product_id']; } elseif (isset($this->request->get['path'])) { $class = '-' . $this->request->get['path']; } elseif (isset($this->request->get['manufacturer_id'])) { $class = '-' . $this->request->get['manufacturer_id']; } elseif (isset($this->request->get['information_id'])) { $class = '-' . $this->request->get['information_id']; } else { $class = ''; } $data['class'] = str_replace('/', '-', $this->request->get['route']) . $class; } else { $data['class'] = 'common-home'; } Уточню, что это для версии 2.1. Если же у Вас магазин на 2.3 версии, то данный код Вам необходимо добавить перед return $this->load->view('common/header', $data); Теперь для того, чтобы вывести класс страницы, необходимо в файле \catalog\view\theme\...\template\common\header.tpl в тег <body> добавить вывод заданного класса, в результате чего должно получиться следующее <body class="<?php echo $class; ?>"> 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.