OpenCart - включить .tpl внутри .tpl
-
25-10-2019 - |
Вопрос
Я использую веб-сайт электронной коммерции OpenCart с открытым исходным кодом. Основная проблема, с которой я сталкиваюсь, заключается в том, что я пытаюсь разделить панировочные сухари на один файл, который я включаю в каждый файл .tpl. Я пытался использовать базовый метод PHP, хотя это не работает.
В ответ на ответ Джея:
Я создал новый контроллер на хлебных крошках, который отображает отдельный файл шаблона хлебной крошки.
<?php
class ControllerCommonBreadcrumb extends Controller {
public function index() {
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/breadcrumbs.tpl')) {
$this->template = $this->config->get('config_template') . '/template/common/breadcrumbs.tpl';
} else {
$this->template = 'default/template/common/breadcrumbs.tpl';
}
$this->render();
}
}
?>
Хотя это вызывает ошибку:
Notice: Undefined variable: breadcrumbs
Решение
Чтобы сделать это, вам нужно сначала установить шаблон хлебной крошки в качестве ребенка действия контроллера, используя $ this-> kids, а затем повторить хлебные крошки с этим. Вам также нужно будет установить идентификатор контроллера Breadcrumb, чтобы вы знали, что повторить в своем шаблоне
Лично я бы просто добавил панировочные сухари в файл common/header.tpl вместо этого, это гораздо проще