Разработка
Opencart 2.3 создаем отдельный шаблон для статьи
Краткое руководство
Для того, чтобы создать отдельный шаблон для статьи сайта на opencart 2.3, надо откорректировать 1 файл (контроллер статьи) + создать отдельный контроллер с названием нового шаблона статьи и сам новый шаблон статьи.
Итак, вот список файлов, которые надо открыть:
- catalog/controller/information/information.php
- catalog/controller/information/newinformation.php
- catalog/veiw/theme/default/template/information/newinformation.tpl
- catalog/veiw/theme/default/template/information/information.tpl
В данном примере я изменяю файлы дефолтной темы, но на практике, обычно, это делается в файлах рабочей темы.
1. Сначала надо посмотреть id статьи, для которой надо создать отдельный шаблон. Это делается в режиме редактирования статьи. В адресной строке находим в конце вот такую фразу information_id=4, где последняя цифра и есть искомый id редактируемой статьи.
Найдем и скопируем следующий код в контроллере information.php
$this->response->setOutput($this->load->view('information/information', $data));
И изменим его на вот этот:
if ($information_id == 4 ) {
$this->response->setOutput($this->load->view('information/newinformation', $data));
} else {
$this->response->setOutput($this->load->view('information/information', $data));
}
Данным кодом мы переопределяем шаблон статьи в зависимости от ее id. Так мы делаем, если нам просто нужно поменять блоки местами или по-другому оформить страницу. Тогда перезодим к пункту 4.
2. Теперь создадим контроллер нового шаблона (нужно в случае, когда новый шаблон должен включать еще и другие модули), просто скопируем содержимое контроллера information.php. Поменяем название класса контроллера на наш, т.е. заменим ControllerInformationInformation на ControllerInformationNewinformation. И заменим код:
$this->response->setOutput($this->load->view('information/information', $data));
на:
if ($information_id == 4 ) {
$this->response->setOutput($this->load->view('information/newinformation', $data));
} else {
$this->response->setOutput($this->load->view('information/information', $data));
}
Так мы определили для данного макета страницы наш шаблон.
3. Теперь зайдем в админке в "Дизайн" -> "Макеты".
Нажимаем + и создаем новый макет с названием нового шаблона. В поле "Путь" указываем путь до нашего контроллера, в нашем случае:
4. Теперь копируем содержимое дефолтного шаблона статьи, т.е. содержимое information.tpl в файл нового шаблона newinfrmation.tpl.
Ну вот мы и создали новый шаблон статьи сайта на opencart 2.3.
PS: Так можно создать отдельный шаблон для категории товара или для самого товара.
Также рекомендуем почитать и другие наши статьи по разработке:
- DJ-Catalog2 Joomla! - корректный вывод списка товаров таблицей интернет-магазина на базе компонента DJ-Catalog2 для Joomla
- DJ-Catalog2 Joomla! - Добавление единицы измерения к цене товара на странице раздела и товара интернет-магазина на базе компонента DJ-Catalog2 для Joomla
- Создаем шаблон (тему) для сайта на OpenCart 2.3 самостоятельно
- Делаем красивое мобильное меню на сайте на OpenCart 2.3
- Создаем меню из статей сайта на OpenCart 2.3
- Добавляем опциии товаров на страницу категории сайта на OpenCart 2.3
- Opencart 2.3 выводим категории в статью сайта
- Opencart 2.3 добавляем категории в подвал сайта
- Модуль вывода брендов (производителей) списком в opencart 2.3
- Создание новой позиции в Opencart 2.3
- OpenCart 2.3 - модуль товаров из этой категории
- Контакты в footer (подвал) сайта на OpenCart 2.3
- Вывод категории в карточке товара OpenCart 2.3