Цена
Бесплатно
- Разработано сообществом OpenCart
- Документация включена
Рейтинг
Версии
Обновлён
28 Июля 2016
Просмотров
3161
Автор
Вводная. Есть шаблон Opencart, необходимо вынести какую либо его часть в отдельный файл, скажем /common/showcase.tpl. И так, по шагам.
1. Создаем сам файл /common/showcase.tpl и вносим туда то, что мы хотим внести.
2. Подключаем файл в home.tpl, для этого в месте ввода пишем
<?php echo $showcase; ?>
3. Создаем файл- контроллер в папке /catalog/controller/common/showcase.php со следующим содержимым:
<?php
class ControllerCommonShowcase extends Controller {
protected function index() {
$this->id = 'showcase';
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/ template/common/showcase.tpl')) {
$this->template = $this->config->get('config_template') . '/template/common/showcase.tpl';
} else {
$this->template = 'default/template/common/showcase.tpl';
}
$this->render();
}
?>
class ControllerCommonShowcase extends Controller {
protected function index() {
$this->id = 'showcase';
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/ template/common/showcase.tpl')) {
$this->template = $this->config->get('config_template') . '/template/common/showcase.tpl';
} else {
$this->template = 'default/template/common/showcase.tpl';
}
$this->render();
}
?>
4. Добавляем наш файл в catalog/controller/common/home.php
$this->children = array(
'common/column_right',
'common/column_left',
'common/footer',
'common/header',
'common/showcase'
);
'common/column_right',
'common/column_left',
'common/footer',
'common/header',
'common/showcase'
);
5. Проверяем.
Решение абсолютно не идеальное, более того - местами даже неправильное, так как нет нормального обработчика отсутствия шаблона в папке. Если он отсутствует мы стыдливо пробуем загрузить оный файл из дефолтового шаблона, и очевидно, что его там не будет. Но как быстрое решение вполне подходит.
Харошая Заметка очень помогла добавить третий блок!!! <!--smile:request--><img style="vertical-align: middle;border: none;" alt="request" src="https://open-cart.org.ua/engine/data/emoticons/request.gif" /><!--/smile--> Спасибо автору