Это довольно просто сделать, если честно.Вам нужно создать контроллер для вашего файла, назвав его в зависимости от папки и имени файла.Например, common/home.php
имеет
Class ControllerCommonHome extends Controller
Доступ к нему осуществляется с помощью index.php?route=common/home
и доступ к методу index()
.Если вы хотите вызвать другой метод, например, foo, вам нужно определить метод как
public function foo() {
// Code here
}
и вызвать его, используя index.php? Route = common / home / foo
Что касается рендеринга вида, это немного сложнее.В основном вам нужно добавить все это в конец вашего метода контроллера
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/new_template_file.tpl')) {
$this->template = $this->config->get('config_template') . '/template/common/new_template_file.tpl';
} else {
$this->template = 'default/template/common/new_template_file.tpl';
}
$this->children = array(
'common/column_left',
'common/column_right',
'common/content_top',
'common/content_bottom',
'common/footer',
'common/header'
);
$this->response->setOutput($this->render());
, который будет отображать /catalog/view/theme/your-theme-name/template/common/new_template_file.tpl
Если этот файл не существует, он попытается использовать тот же путь в default
папка темы
Я бы порекомендовал вам взглянуть на несколько контроллеров и шаблонов, чтобы понять, откуда все идет правильно, но это основная суть того, как это работает