Предположим, я хочу отобразить специальный модуль на главной странице в позиции, отличной от $ content_top, $ content_bottom, $ column_left или $ column_right. Как мне это сделать? Если у вас есть некоторый опыт с этим, не могли бы вы дать мне несколько указателей?
Модуль будет отображаться в home.tpl, но я предполагаю, что мне нужно будет отредактировать файл контроллера home.php
Для этого вам необходимо внести изменения в два файла
Во-первых, вам нужно будет отредактировать контроллер. В этом примере я собираюсь добавить специальные предложения на домашнюю страницу
Поэтому откройте файл catalog/controller/common/home.php
. Где-то перед этой строкой $this->response->setOutput($this->render());
добавьте следующее
$this->data['special_block'] = $module = $this->getChild('module/special', array( 'limit' => 5, 'image_width' => 80, 'image_height' => 80 ));
Массив – это настройки для модуля. Обратите внимание, что расположение, положение, статус и порядок сортировки не включены, так как они здесь неактуальны. Я также использовал special_block
как уникальный ключ для контента, чтобы избежать его противоречия с любыми другими элементами, которые могут нуждаться в рендеринге
Затем в вашем файле шаблона вам просто нужно использовать <?php echo $special_block; ?>
<?php echo $special_block; ?>
где бы вы ни захотели, чтобы модуль