OpenCart - Einschließen .tpl in .tpl
-
25-10-2019 - |
Frage
Ich verwende die OpenCart Open Source E-Commerce-Website. Das Hauptproblem, das ich habe, ist, wenn ich versuche, die Breadcrumbs in eine einzelne Datei zu trennen, die ich in jede .tpl -Datei einbeziehe. Ich habe versucht, die Methode für grundlegende PHP -Include -Include zu verwenden, obwohl dies nicht funktioniert.
Antwort auf Jays Antwort:
Ich habe einen neuen Breadcrumbs -Controller erstellt, der die separate Breadcrumb -Vorlagendatei rendert.
<?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();
}
}
?>
Obwohl dies den Fehler verursacht:
Notice: Undefined variable: breadcrumbs
Lösung
Dazu müssen Sie zuerst die Breadcrumb-Vorlage als Kind der Controller-Aktion mit $ this-> Kindern einstellen und dann die Brotkrumen wieder ausziehen. Sie müssen auch die ID des Breadcrumb -Controllers festlegen, damit Sie wissen, was Sie in Ihrer Vorlage wiederholen sollen
Persönlich würde ich nur die Brotkrumen zur Common/Header.tpl -Datei hinzufügen, es ist viel einfacher